共用方式為


如何使用 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 在 Configuration Manager 中連線到 SMS 提供者
如何使用 WMI 建立Configuration Manager物件
如何使用 WMI 刪除Configuration Manager物件
如何使用 WMI 修改Configuration Manager物件
如何使用 WMI 執行非同步Configuration Manager查詢
如何使用 WMI 執行同步Configuration Manager查詢
如何使用 WMI 讀取Configuration Manager物件
如何使用 WMI 讀取延遲屬性