如何使用 Managed 程式碼修改 Configuration Manager 物件

若要使用託管 SMS 提供者修改 Configuration Manager 物件實例,請使用物件的 IResultObject 介面進行修改。 接著,呼叫 IResultObject.Put 方法來提交變更。

注意事項

物件的 IResultObject 介面可以透過 WqlConnectionManager.GetInstance 方法或其他查詢來取得。 如需使用非同步查詢的範例,請參閱 如何使用受控程式碼執行非同步 Configuration Manager 查詢。

修改 Configuration Manager 物件

  1. 設定與 SMS 提供者的連線。 如需詳細資訊,請參閱如何使用託管程式碼連線到 Configuration Manager 中的 SMS 提供者。

  2. 使用您在步驟 1 中取得的 WqlConnectionManager 物件,呼叫 GetInstance 以取得所需物件的 IResultObject 。

  3. 使用 IResultObject 變更物件。

  4. 使用 IResultObject 物件 Put 方法將變更提交至 SMS 提供者。

範例

下列範例函式會從提供的套件識別碼和描述更新套件的描述。

如需呼叫範例程式碼的詳細資訊,請參閱 呼叫 Configuration Manager 程式碼片段。


public void ModifyPackageDescription(WqlConnectionManager connection, string packageID, string description)
{
    try
    {
        IResultObject package = connection.GetInstance(@"SMS_Package.PackageID='" + packageID + "'");
        Console.WriteLine("Package Name: " + package["Name"].StringValue);
        Console.WriteLine("Current Description: " + package["Description"].StringValue);

        package["Description"].StringValue = description;

        package.Put();

        Console.WriteLine("New description: " + package["Description"].StringValue);
    }
    catch (SmsException ex)
    {
        Console.WriteLine("Failed to get package. Error: " + ex.Message);
        throw;
    }
}

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

參數 Type 描述
connection WqlConnectionManager 與 SMS 提供者的有效連線。

正在編譯程式碼

命名空間

系統

System.Collections.Generic

System.ComponentModel

Microsoft.ConfigurationManagement.ManagementProvider

Microsoft.ConfigurationManagement.ManagementProvider.WqlQueryEngine

組件

Microsoft.ConfigurationManagement.ManagementProvider

adminui.wqlqueryengine

健全的程式設計

可能引發的 Configuration Manager 例外狀況包括 SmsConnectionException 和 SmsQueryException。 這些可以與 SmsException 一起捕捉。

另請參閱

物件概觀:Configuration Manager 消極屬性如何使用 Managed 程式碼呼叫 Configuration Manager 物件類別方法如何使用 Managed 程式碼連線到 Configuration Manager 提供者如何建立使用 Managed 程式碼的 Configuration Manager 物件如何使用 Managed 程式碼執行非同步 Configuration Manager 查詢如何使用 Managed 程式碼執行同步 Configuration Manager 查詢如何讀取使用 Managed Code 的 Configuration Manager 物件如何使用 Managed 程式碼來讀取消極屬性