Partilhar via


Como Chamar um Método de Classe WMI ao Utilizar a Gestão de Sistemas

Para ligar para um método de Windows de gestão de instrumentos de gestão (WMI) de clientes, no Gestor de Configuração, ligue para InvokeMethod o da classe WMI ManagementClass .

Chamar um método de classe WMI

  1. Configurar uma ligação ao espaço de nomes WMI do cliente do Gestor de Configuração. Para obter mais informações, consulte Como Ligação ao Espaço de Nome WMI do Cliente WMI do Gestor de Configuração utilizando o System.Management.

  2. Crie um ManagementClass utilizando o caminho que ManagementScope obtém no primeiro passo, e também o nome da classe em que pretende chamar um método.

  3. Crie um ManagementBaseObject e especifique qualquer um nos parâmetros para o método.

  4. Ligue para o método utilizando o método do ManagementClass InvokeMethod objeto.

  5. Utilizando os ManagementBaseObject parâmetros devolvidos, consulte os parâmetros devolvidos.

Exemplo

O exemplo de código C# seguinte chama o ISmsClient::GetAssignedSite método para obter o site atual atribuído para o cliente. Em seguida, define o site atribuído de volta ao mesmo valor usando o ISmsClient::SetAssignedSite método.

Para obter informações sobre a chamada do código de amostra, consulte como chamar um método de classe WMI utilizando o sistema.Management.


public void CallMethod(ManagementScope scope)  
{  
    try// Get the client's SMS_Client class.  
    {  
        ManagementClass cls = new ManagementClass(scope.Path.Path, "sms_client", null);  

        // Get current site code.  
        ManagementBaseObject outSiteParams = cls.InvokeMethod("GetAssignedSite", null, null);  

        // Display current site code.  
        Console.WriteLine(outSiteParams["sSiteCode"].ToString());  

        // Set up current site code as input parameter for SetAssignedSite.  
        ManagementBaseObject inParams = cls.GetMethodParameters("SetAssignedSite");  
        inParams["sSiteCode"] = outSiteParams["sSiteCode"].ToString();  

        // Assign the Site code.  
        ManagementBaseObject outMPParams = cls.InvokeMethod("SetAssignedSite", inParams, null);  
    }  
    catch (ManagementException e)  
    {  
        throw new Exception("Failed to execute method", e);  
    }  
}  

Este método de exemplo tem os seguintes parâmetros:

Parâmetro Tipo Description
scope - ManagementScope Uma ligação válida ao fornecedor de WMI cliente. O caminho é raiz\ccm.

A Compilar o Código

Espaços de nomes

Sistema

Sistema.Gestão

Assemblagem

Sistema.Gestão

Programação Robusta

A exceção que pode ser levantada é System.Management.ManagementException.

Consulte também

Sobre a programação do Gestor de Configuração WMI
Como chamar um método de classe WMI usando o sistema.Management
Como Ligação ao espaço de nomes WMI do Gestor de Configuração WMI usando system.Management
Como realizar uma consulta assíncronea utilizando o sistema.Management
Como realizar uma consulta sincronizada utilizando o sistema.Management
Como Ler um Objeto WMI ao Utilizar a Gestão de Sistemas