共用方式為


如何使用 WMI 呼叫 Configuration Manager 物件類別方法

若要呼叫 SMS 提供者類別方法,請在 Configuration Manager 中使用 SWbemServices 物件 ExecMethod 方法來呼叫 類別所定義的方法。

注意事項

若要在物件實例上呼叫方法,請直接從物件呼叫 方法。 例如,ObjectInstance.MethodName parameters

呼叫 Configuration Manager 物件類別方法

  1. 設定與SMS提供者的連線。 如需詳細資訊,請 參閱SMS提供者基本概念

  2. 使用您在第一個步驟中取得的 SWbemServices,呼叫 Get 以取得類別定義。

  3. 將輸入參數建立為 SWbemMethodSet

  4. 使用 SWbemServices 物件實例,呼叫 ExecMethod 並指定類別名稱和輸入參數。

  5. 從傳回之 SWbemObject 物件中的 ReturnValue 屬性擷取方法傳回值。

範例

下列範例會呼叫 SMS_CollectionRuleQuery 類別 ValidateQuery 類別方法來驗證集合規則查詢。

如需呼叫範例程式代碼的相關信息,請參閱呼叫 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

此範例方法具有下列參數:

參數 Type 描述
connection - 受控: SWbemServices SMS 提供者的有效連線。
wqlQuery - String WQL 查詢字串。 在此範例中, SELECT * FROM SMS_R_System 是有效的查詢。

正在編譯程式碼

另請參閱

Windows Management Instrumentation物件概觀如何使用 WMI 如何使用 WMI 建立 Configuration Manager 物件如何使用 WMI 如何使用 WMI 修改來刪除 Configuration Manager 物件,以聯機到 Configuration Manager 中的 SMS 提供者Configuration Manager 物件使用 WMI如何使用 WMI 如何使用 WMI 執行同步 Configuration Manager 查詢如何讀取 來執行異步 Configuration Manager 查詢Configuration Manager物件使用 WMI如何使用 WMI 讀取延遲屬性