Sdílet prostřednictvím


Volání metody třídy objektu Configuration Manager pomocí rozhraní WMI

Pokud chcete volat metodu třídy poskytovatele serveru SMS, v Configuration Manager použijete metodu ExecMethod objektu SWbemServices k volání metod, které jsou definovány třídou .

Poznámka

Pokud chcete volat metodu na instanci objektu, volejte metodu přímo z objektu. Například: ObjectInstance.MethodName parameters.

Volání metody třídy objektu Configuration Manager

  1. Nastavte připojení k poskytovateli serveru SMS. Další informace najdete v tématu Základy poskytovatele serveru SMS.

  2. Pomocí SWbemServices, které získáte v kroku 1, zavolejte Get a získejte definici třídy.

  3. Vytvořte vstupní parametry jako SWbemMethodSet.

  4. Pomocí instance objektu SWbemServices zavolejte ExecMethod a zadejte název třídy a vstupní parametry.

  5. Načtěte návratovou hodnotu metody z ReturnValue vlastnost ve vráceném objektu SWbemObject .

Příklad

Následující příklad ověří dotaz pravidla kolekce voláním třídy SMS_CollectionRuleQuery třídy ValidateQuery .

Informace o volání ukázkového kódu najdete v tématu Volání Configuration Manager fragmentů kódu.

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

Tato ukázková metoda má následující parametry:

Parametr Typ Popis
connection - Spravované: SWbemServices Platné připojení k poskytovateli serveru SMS.
wqlQuery - String Řetězec dotazu WQL. V tomto příkladu SELECT * FROM SMS_R_System je platný dotaz.

Kompilace kódu

Viz taky

Přehled objektůslužby Windows Management InstrumentationPostup připojení k poskytovateli serveru SMS v Configuration Manager pomocí rozhraní WMIJak vytvořit objekt Configuration Manager pomocí rozhraní WMIOdstranění objektu Configuration Manager pomocí rozhraní WMIPostup úpravy objektu Configuration Manager objektu pomocí rozhraní WMIPostup provedení asynchronního dotazu Configuration Manager pomocí rozhraní WMIJak provést synchronní Configuration Manager dotaz pomocí rozhraní WMIPostup čtení objektu Configuration Manager objektu pomocí rozhraní WMI– Jak číst opožděné vlastnosti pomocí rozhraní WMI