Compartilhar via


Registrar o provedor de registro do sistema

O provedor de Registro do Sistema é registrado como parte do processo de instalação do WMI no Windows. Se você estiver usando outra plataforma e quiser usar o provedor de Registro do Sistema, primeiro registre o provedor por conta própria, seguindo as etapas descritas abaixo.

O procedimento a seguir descreve como registrar o provedor de Registro do Sistema.

Para registrar o provedor de Registro do Sistema

  1. Registre o provedor como servidor COM.

    Se necessário, talvez você precise criar entradas do registro. Esse processo se aplica a todos os servidores COM e não está relacionado ao WMI. Para obter mais informações, confira a documentação COM no SDK (Software Development Kit) do Microsoft Windows.

  2. Crie uma instância da classe __Win32Provider para descrever a implementação do provedor de Registro do Sistema.

    A instância __Win32Provider descreve o nome do provedor e seu CLSID (identificador de classe).

    O exemplo a seguir descreve como registrar o __Win32Provider como propriedade de instância, evento ou provedor de método.

    // Instance provider
    instance of __Win32Provider as $InstProv
    {
        Name    = "RegProv" ;
        ClsId   = "{fe9af5c0-d3b6-11ce-a5b6-00aa00680c3f}" ;
    };    
    // Property provider 
    instance of __Win32Provider as $PropProv 
    {
        Name = "RegPropProv"; 
        Clsid = "{72967901-68EC-11d0-B729-00AA0062CBB7}"; 
    }; 
    // Event provider
    instance of __Win32Provider as $RegEvent
    {
        Name = "RegistryEventProvider";
        Clsid = "{fa77a74e-e109-11d0-ad6e-00c04fd8fdff}";
    };
    instance of __Win32Provider as $RegMethod
    {
        Name = "RegistryMethodProvider";
        Clsid = "{44DE513E-60C2-11d3-AF33-00C04F79FEB1}";
    };
    
  3. Crie uma ou mais instâncias de classes derivadas da classe __ProviderRegistration para descrever a implementação lógica do provedor de Registro do Sistema.

    Dependendo da finalidade para a qual você está registrando o provedor de Registro do Sistema, você pode criar uma ou mais das classes a seguir.

    __InstanceProviderRegistration

    __PropertyProviderRegistration

    __EventProviderRegistration

    __MethodProviderRegistration

    O exemplo de código MOF a seguir descreve como você pode registrar o provedor de Registro do Sistema como instância, propriedade, evento ou provedor de método.

    instance of __InstanceProviderRegistration
    {
        Provider = $InstProv;
        SupportsPut = TRUE;
        SupportsGet = TRUE;
        SupportsDelete = FALSE;
        SupportsEnumeration = TRUE;
    };
    instance of __PropertyProviderRegistration
    {
        Provider = $PropProv;
        SupportsPut = TRUE;
        SupportsGet = TRUE;
    }; 
    instance of __EventProviderRegistration
    {
        Provider = $RegEvent;
        EventQueryList = {
                "select * from RegistryKeyChangeEvent",
                "select * from RegistryValueChangeEvent",
                "select * from RegistryTreeChangeEvent"};
    };
    // Method provider
    instance of __MethodProviderRegistration
    {
        Provider = $RegMethod;
    };
    
  4. Compile o arquivo MOF usando o compilador MOF ou a interface IMofCompiler.

O arquivo RegEvent.mof fornecido na seção WMI do SDK do Windows contém as instâncias __Win32Provider e __EventProviderRegistration necessárias para registrar o provedor de Registro do Sistema como provedor de eventos. Para obter mais informações sobre como registrar um provedor, confira Como registrar um provedor e Como receber um evento do WMI.