[!if CLASS_SPECIFIED] #pragma namespace ("\\\\.\\[!output ESCAPED_NAMESPACE]") [!else] #pragma namespace ("\\\\.\\root\\default") [!endif] instance of __Win32Provider as $[!output SHORT_NAME] { Name = "[!output SHORT_NAME]" ; //Name is the key property for __Provider objects. //vendor|provider|version is the suggested format //to prevent name collisions. ClsId = "{[!output CLSID_REGISTRY_FORMAT]}" ; //provider GUID DefaultMachineName = NULL; //NULL for local machine ClientLoadableCLSID = NULL; //reserved ImpersonationLevel = 0; //reserved InitializationReentrancy = 0; //Set of flags that provide information about serialization: //0 = all initialization of this provider must be serialized //1 = all initializations of this provider in the same namespace must be serialized //2 = no initialization serialization is necessary InitializeAsAdminFirst = FALSE; //Request to be fully initialized as "Admin" before //initializations begin for users PerLocaleInitialization = FALSE; //Indicates whether the provider is initialized for each //locale if a user connects to the same namespace more //than once using different locales. PerUserInitialization = FALSE; //Indicates whether the provider is initialized once for each actual //Windows NT/Windows 2000 NTLM user making requests of the provider. //If set to FALSE, the provider is initialized once for all users Pure = TRUE; //A pure provider exists only to service requests from //applications and WMI. Most providers are pure providers //Non-pure providers transition to the role of client after they have //finished servicing requests. UnloadTimeout = NULL; //Currently ignored //Use __CacheControl class in the root namespace to control provider unloading //A string in the DMTF date/time format that specifies how long WMI //allows the provider to remain idle before it is unloaded. } ; instance of __InstanceProviderRegistration { Provider = $[!output SHORT_NAME]; [!if SUPPORT_PUT] SupportsPut = "TRUE"; [!else] SupportsPut = "FALSE"; [!endif] [!if SUPPORT_GET] SupportsGet = "TRUE"; [!else] SupportsGet = "FALSE"; [!endif] [!if SUPPORT_DELETE] SupportsDelete = "TRUE"; [!else] SupportsDelete = "FALSE"; [!endif] [!if SUPPORT_ENUMERATE] SupportsEnumeration = "TRUE"; [!else] SupportsEnumeration = "FALSE"; [!endif] }; [!if PROVIDE_METHODS] instance of __MethodProviderRegistration { Provider = $[!output SHORT_NAME]; }; [!endif]