Sample Install Program

}

else if (argc != 1) {

 

printf(“Usage: dummy_install [-u]\n”);

 

printf(“

-u: uninstall the add-in\n”);

 

exit (1);

 

}

 

 

/* Fill the Access product info */ access_desc.StandardVersion = dl_version; strcpy(access_desc.StandardDescription, “DUMMY”); access_desc.ProductVersion = access_version; strcpy(access_desc.ProductDescription, “Dummy”); strcpy(access_desc.ProductVendor, “HP”); access_desc.ProductFlags = 0;

/* fill sub-service information */ sub_service.SubServiceId = 0; strcpy(sub_service.Description, “Dummy DLM”); sub_service.Type = CSSM_DL_CUSTOM; sub_service.Attributes.OdbcAttributes = NULL; sub_service.WrappedProduct = access_desc;

sub_service.AuthenticationMechanism = CSSM_AUTHENTICATION_NONE; sub_service.NumberOfRelOperatorTypes = 1; sub_service.RelOperatorTypes = 0; sub_service.NumberOfConjOperatorTypes = 1; sub_service.ConjOperatorTypes = 0; sub_service.QueryLimitsSupported = CSSM_FALSE; sub_service.NumberOfDataStores = 0; sub_service.DataStoreNames = NULL; sub_service.DataStoreInfo = NULL;

sub_service.Reserved = NULL;

78

Appendix A