Partilhar via


Como Chamar um Método de Classe de um Objeto do Configuration Manager ao Utilizar a WMI

Para chamar um método de classe sms provider, no Gestor de Configuração, utilize o método execMethod do objeto SWbemServices para chamar métodos definidos pela classe.

Nota

Para ligar para um método numa instância de objeto, ligue diretamente para o método do objeto. Por exemplo, ObjectInstance.MethodName parameters.

Para chamar um método de classe de objeto de gestor de configuração

  1. Configurar uma ligação com o Fornecedor DE SMS. Para mais informações, consulte os fundamentos do Fornecedor de SMS.

  2. Utilizando os SWbemServices que obtém no primeiro passo, ligue para obter a definição de classe.

  3. Crie os parâmetros de entrada como um SWbemMethodSet.

  4. Utilizando a instância do objeto SWbemServices, ligue para o ExecMethod e especifique o nome da classe e os parâmetros de entrada.

  5. Recupere o valor de retorno do método a partir da propriedade ReturnValue no objeto SWbemObject devolvido.

Exemplo

O exemplo a seguir valida uma consulta de regras de cobrança chamando o método de classe SMS_CollectionRuleQuery ValidateQuery.

Para obter informações sobre a chamada do código de amostra, consulte o Código de Identificação do Gestor de Chamadas.

Sub ValidateQueryRule(connection, wqlQuery)  

    Dim inParams  
    Dim outParams  
    Dim collectionRuleClass  

    On Error Resume Next  

    ' Obtain the class definition object of a SMS_CollectionRuleQuery object.  
    Set collectionRuleClass = connection.Get("SMS_CollectionRuleQuery")  

    If Err.Number<>0 Then  
        Wscript.Echo "Couldn't get collection rule query object"  
        Exit Sub  
    End If  

    ' Set up the in parameter.  
    Set inParams = collectionRuleClass.Methods_("ValidateQuery").InParameters.SpawnInstance_  
    inParams.WQLQuery = wqlQuery  
    If Err.Number<>0 Then  
        Wscript.Echo "Couldn't get in parameters object"  
        Exit Sub  
    End If  

    ' Call the method.  
    Set outParams = _  
        connection.ExecMethod( "SMS_CollectionRuleQuery", "ValidateQuery", inParams)  
    If Err.Number<>0 Then  
        Wscript.Echo "Couldn't run method"  
        Exit Sub  
    End If  

    If outParams.ReturnValue = True Then  
        Wscript.Echo "Valid query"  
    Else   
        WScript.Echo "Not a valid query"  
    End If            
  End Sub  

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

Parâmetro Tipo Description
connection - Gerido: SWbemServices Uma ligação válida ao Fornecedor de SMS.
wqlQuery - String Uma cadeia de consulta WQL. Para este exemplo, SELECT * FROM SMS_R_System é uma consulta válida.

A Compilar o Código

Consulte também

Windows Instrumentação de Gestão
Visão geral de objetos Como Ligação a um fornecedor de SMS no Gestor de Configuração usando o WMI
Como criar um objeto de gestor de configuração usando o WMI
Como eliminar um objeto de gestor de configuração usando o WMI
Como modificar um objeto de gestor de configuração usando o WMI
Como realizar uma consulta de gestor de configuração assíncronea usando o WMI
Como executar uma consulta de gestor de configuração sincronizada usando o WMI
Como ler um objeto de gestor de configuração usando o WMI
Como Ler Propriedades Lentas ao Utilizar a WMI