Come chiamare un metodo della classe oggetto Configuration Manager usando WMI
Per chiamare un metodo della classe provider SMS, in Configuration Manager si usa il metodo ExecMethod dell'oggetto SWbemServices per chiamare i metodi definiti dalla classe .
Nota
Per chiamare un metodo in un'istanza dell'oggetto, chiamare direttamente il metodo dall'oggetto . Ad esempio, ObjectInstance.MethodName parameters
.
Per chiamare un metodo di classe oggetto Configuration Manager
Configurare una connessione al provider SMS. Per altre informazioni, vedere Nozioni fondamentali sul provider SMS.
Usando SWbemServices ottenuto nel passaggio 1, chiamare Get per ottenere la definizione della classe.
Creare i parametri di input come SWbemMethodSet.
Usando l'istanza dell'oggetto SWbemServices, chiamare ExecMethod e specificare il nome della classe e i parametri di input.
Recuperare il valore restituito dal metodo dalla proprietà ReturnValue nell'oggetto SWbemObject restituito.
Esempio
Nell'esempio seguente viene convalidata una query sulle regole di raccolta chiamando il metodo della classe ValidateQuerydella classe SMS_CollectionRuleQuery.
Per informazioni sulla chiamata del codice di esempio, vedere Chiamata di frammenti di codice Configuration Manager.
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
Questo metodo di esempio include i parametri seguenti:
Parametro | Tipo | Descrizione |
---|---|---|
connection |
- Gestito: SWbemServices | Connessione valida al provider SMS. |
wqlQuery |
- String |
Stringa di query WQL. Per questo esempio, SELECT * FROM SMS_R_System è una query valida. |
Compilazione del codice
Vedere anche
Strumentazione gestione Windows
Panoramica degli oggettiCome connettersi a un provider SMS in Configuration Manager tramite WMI
Come creare un oggetto Configuration Manager tramite WMI
Come eliminare un oggetto Configuration Manager tramite WMI
Come modificare un oggetto Configuration Manager tramite WMI
Come eseguire una query Configuration Manager asincrona usando WMI
Come eseguire una query di Configuration Manager sincrona tramite WMI
Come leggere un oggetto Configuration Manager tramite WMI
Come leggere le proprietà lazy usando WMI