Freigeben über


Aufrufen einer Configuration Manager-Objektklassenmethode mithilfe von verwaltetem Code

Zum Aufrufen einer SMS Provider-Klassenmethode verwenden Sie in Configuration Manager die ExecuteMethod-Methode. Sie füllen ein Dictionary-Objekt mit den Parametern der Methode auf, und der Rückgabewert ist ein IResultObject-Objekt , das das Ergebnis des Methodenaufrufs enthält.

Hinweis

Um eine Methode für ein Objekt instance aufzurufen, verwenden Sie die ExecuteMethod-Methode für das IResultObject-Objekt instance.

So rufen Sie eine Configuration Manager Objektklassenmethode auf

  1. Richten Sie eine Verbindung mit dem SMS-Anbieter ein. Weitere Informationen finden Sie unter Grundlagen des SMS-Anbieters.

  2. Erstellen Sie die Eingabeparameter als Dictionary-Objekt .

  3. Rufen Sie mithilfe des WqlConnectionManager-Objekts instance ExecuteMethod auf, und geben Sie den Klassennamen und die Eingabeparameter an.

  4. Rufen Sie den Rückgabewert der Methode aus der ReturnValue-Eigenschaft im zurückgegebenen IResultObject-Objekt ab.

Beispiel

Im folgenden Beispiel wird eine Sammlungsregelabfrage überprüft, indem die SMS_CollectionRuleQuery Klasse ValidateQuery-Klassenmethode aufgerufen wird.

Informationen zum Aufrufen des Beispielcodes finden Sie unter Aufrufen von Configuration Manager Codeausschnitten.

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;
     }
}

Diese Beispielmethode weist die folgenden Parameter auf:

Parameter Typ Beschreibung
connection – Verwaltet: WqlConnectionManager Eine gültige Verbindung mit dem SMS-Anbieter.
wqlQuery – Verwaltet: IResultObject Eine WQL-Abfragezeichenfolge. In diesem Beispiel SELECT * FROM SMS_R_System ist eine gültige Abfrage.

Kompilieren des Codes

Namespaces

System

System.Collections.Generic

System.ComponentModel

Microsoft.ConfigurationManagement.ManagementProvider

Microsoft.ConfigurationManagement.ManagementProvider.WqlQueryEngine

Assembly

microsoft.configurationmanagement.managementprovider

adminui.wqlqueryengine

Robuste Programmierung

Die Configuration Manager Ausnahmen, die ausgelöst werden können, sind SmsConnectionException und SmsQueryException. Diese können zusammen mit SmsException abgefangen werden.

Siehe auch

Übersicht über ObjekteHerstellen einer Verbindung mit einem Configuration Manager Anbieter mithilfe von verwaltetem CodeErstellen eines Configuration Manager-Objekts mithilfe von verwaltetem CodeGewusst wie: Ändern eines Configuration Manager-Objekts mithilfe von verwaltetem CodeVorgehensweise: Ausführen eines asynchronen Objekts Configuration Manager Abfrage mithilfe von verwaltetem CodeAusführen einer synchronen Configuration Manager Abfrage mithilfe von verwaltetem CodeLesen eines Configuration Manager-Objekts mithilfe von verwaltetem Code