Cómo llamar a un método de clase de objeto Configuration Manager mediante WMI
Para llamar a un método de clase proveedor de SMS, en Configuration Manager, se usa el método ExecMethod del objeto SWbemServices para llamar a métodos definidos por la clase .
Nota:
Para llamar a un método en una instancia de objeto, llame directamente al método desde el objeto . Por ejemplo, ObjectInstance.MethodName parameters
.
Para llamar a un método de clase de objeto Configuration Manager
Configure una conexión con el proveedor de SMS. Para obtener más información, consulte Aspectos básicos del proveedor de SMS.
Con el SWbemServices que obtiene en el paso uno, llame a Get para obtener la definición de clase.
Cree los parámetros de entrada como SWbemMethodSet.
Con la instancia del objeto SWbemServices, llame a ExecMethod y especifique el nombre de clase y los parámetros de entrada.
Recupere el valor devuelto del método de la propiedad ReturnValue en el objeto SWbemObject 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.
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
Este método de ejemplo tiene los parámetros siguientes:
Parámetro | Tipo | Descripción |
---|---|---|
connection |
- Administrado: SWbemServices | Una conexión válida al proveedor de SMS. |
wqlQuery |
- String |
Cadena de consulta WQL. En este ejemplo, SELECT * FROM SMS_R_System es una consulta válida. |
Compilar el código
Consulta también
Instrumental de administración de Windows
Información general sobrelos objetos Cómo conectarse a un proveedor de SMS en Configuration Manager mediante WMI
Creación de un objeto Configuration Manager mediante WMI
Cómo eliminar un objeto Configuration Manager mediante WMI
Cómo modificar un objeto Configuration Manager mediante WMI
Cómo realizar una consulta de Configuration Manager asincrónica mediante WMI
Cómo realizar una consulta de Configuration Manager sincrónica mediante WMI
Cómo leer un objeto Configuration Manager mediante WMI
Cómo leer propiedades diferidas mediante WMI