Cómo llamar a un método de clase de objeto de Configuration Manager mediante código administrado

Para llamar a un método de clase Proveedor de SMS, en Configuration Manager, use el método ExecuteMethod. Rellena un objeto Dictionary con los parámetros del método y el valor devuelto es un objeto IResultObject que contiene el resultado de la llamada al método.

Nota:

Para llamar a un método en una instancia de objeto, utilice el método ExecuteMethod en la instancia del objeto IResultObject .

Para llamar a un método de clase de objeto de Configuration Manager

  1. Configure una conexión al proveedor de SMS. Para obtener más información, consulte Aspectos básicos del proveedor de SMS.

  2. Cree los parámetros de entrada como un objeto Dictionary .

  3. Utilizando la instancia del objeto WqlConnectionManager , llame a ExecuteMethod y especifique el nombre de la clase y los parámetros de entrada.

  4. Recupere el valor de retorno del método de la propiedad ReturnValue en el objeto IResultObject devuelto.

Ejemplo

En el ejemplo siguiente se valida una consulta de regla de colección llamando al método de clase ValidateQuery de la clase SMS_CollectionRuleQuery.

Para obtener información sobre cómo llamar al código de ejemplo, consulte Llamar a fragmentos de código de Configuration Manager.

public void ValidateQueryRule(WqlConnectionManager connection, string wqlQuery)
{
    try
    {
        Dictionary<string,object> validateQueryParameters = new Dictionary<string,object>();

        // Add the sql query as the WQLQuery parameter.
        validateQueryParameters.Add("WQLQuery",wqlQuery);

        // Call the method
        IResultObject result=connection.ExecuteMethod("SMS_CollectionRuleQuery", "ValidateQuery", validateQueryParameters);

        if (result["ReturnValue"].BooleanValue == true)
        {
            Console.WriteLine (wqlQuery + " is a valid query");
        }
        else
        {
            Console.WriteLine (wqlQuery + " is not a valid query");
        }
     }
     catch (SmsException ex)
     {
           Console.WriteLine("Failed to validate query rule: ",ex.Message);
           throw;
     }
}

Este método de ejemplo tiene los siguientes parámetros:

Parámetro Tipo Descripción
connection - Administrado: WqlConnectionManager Una conexión válida con el proveedor de SMS.
wqlQuery - Administrado: IResultObject Una cadena de consulta WQL. En este ejemplo, SELECT * FROM SMS_R_System es una consulta válida.

Compilar el código

Espacios de nombres

System

System.Collections.Generic

System.ComponentModel

Microsoft.ConfigurationManagement.ManagementProvider

Microsoft.ConfigurationManagement.ManagementProvider.WqlQueryEngine

Ensamblado

Microsoft.ConfigurationManagement.ManagementProvider

adminui.wqlqueryengine

Programación sólida

Las Configuration Manager excepciones que se pueden generar son SmsConnectionException y SmsQueryException. Estos se pueden detectar junto con SmsException.

Consulta también

Información general sobre objetosCómo conectarse a un proveedor de Configuration Manager mediante código administradoCómo crear un objeto de Configuration Manager mediante código administradoCómo modificar un objeto de Configuration Manager mediante código administradoCómo realizar una investigación asincrónica Consulta de Configuration Manager mediante código administradoCómo realizar una consulta sincrónica de Configuration Manager mediante código administradoCómo leer un objeto de Configuration Manager mediante código administrado