Compartir a través de


Cómo llamar a un método de clase de objeto 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, use el método ExecuteMethod en la instancia del objeto IResultObject .

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

  1. Configure una conexión con el 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. Con la instancia del objeto WqlConnectionManager , llame a ExecuteMethod y especifique el nombre de clase y los parámetros de entrada.

  4. Recupere el valor devuelto 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, vea 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 parámetros siguientes:

Parámetro Tipo Descripción
connection - Administrado: WqlConnectionManager Una conexión válida al proveedor de SMS.
wqlQuery - Administrado: IResultObject 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 excepciones Configuration Manager que se pueden generar son SmsConnectionException y SmsQueryException. Estos se pueden detectar junto con SmsException.

Consulta también

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