Share via


如何建立部署

下列範例示範如何使用 SMS_Advertisement 類別及其屬性建立Configuration Manager部署。

重要事項

建立部署的帳戶需要集合的 部署套件 許可權和套件的 取許可權。

概觀

  1. 設定與 SMS 提供者的連線。

  2. 建立 類別的新物件 SMS_Advertisement

  3. 填入新的廣告屬性。

  4. 儲存新的廣告和屬性。

範例

下列範例會建立軟體發佈公告。

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

Sub SWDCreateAdvertisement(connection, existingCollectionID, existingPackageID, existingProgramName, newAdvertisementName, newAdvertisementComment, newAdvertisementFlags, newRemoteClientFlags, newAdvertisementStartOfferDateTime, newAdvertisementStartOfferEnabled)  
    Dim newAdvertisement  
    ' Create the new advertisement object.  
    Set newAdvertisement = connection.Get("SMS_Advertisement").SpawnInstance_  

    ' Populate the advertisement properties.  
    newAdvertisement.CollectionID = existingCollectionID  
    newAdvertisement.PackageID = existingPackageID  
    newAdvertisement.ProgramName = existingProgramName  
    newAdvertisement.AdvertisementName = newAdvertisementName  
    newAdvertisement.Comment = newAdvertisementComment  
    newAdvertisement.AdvertFlags = newAdvertisementFlags  
    newAdvertisement.RemoteClientFlags = newRemoteClientFlags
    newAdvertisement.PresentTime = newAdvertisementStartOfferDateTime  
    newAdvertisement.PresentTimeEnabled = newAdvertisementStartOfferEnabled  

    ' Save the new advertisement and properties.  
    newAdvertisement.Put_   

    ' Output new advertisement name.  
    Wscript.Echo "Created advertisement: " & newAdvertisement.AdvertisementName  

End Sub  
public void CreateSWDAdvertisement(WqlConnectionManager connection, string existingCollectionID, string existingPackageID, string existingProgramName, string newAdvertisementName, string newAdvertisementComment, int newAdvertisementFlags, int newRemoteClientFlags, string newAdvertisementStartOfferDateTime, bool newAdvertisementStartOfferEnabled)  
{  
    try  
    {  
        // Create new advertisement instance.  
        IResultObject newAdvertisement = connection.CreateInstance("SMS_Advertisement");  

        // Populate new advertisement values.  
        newAdvertisement["CollectionID"].StringValue = existingCollectionID;  
        newAdvertisement["PackageID"].StringValue = existingPackageID;  
        newAdvertisement["ProgramName"].StringValue = existingProgramName;  
        newAdvertisement["AdvertisementName"].StringValue = newAdvertisementName;  
        newAdvertisement["Comment"].StringValue = newAdvertisementComment;  
        newAdvertisement["AdvertFlags"].IntegerValue = newAdvertisementFlags;  
        newAdvertisement["RemoteClientFlag"].IntegerValue = newRemoteClientFlags;
        newAdvertisement["PresentTime"].StringValue = newAdvertisementStartOfferDateTime;  
        newAdvertisement["PresentTimeEnabled"].BooleanValue = newAdvertisementStartOfferEnabled;  

        // Save the new advertisement and properties.  
        newAdvertisement.Put();  

        // Output new assignment name.  
        Console.WriteLine("Created advertisement: " + newAdvertisement["AdvertisementName"].StringValue);  
    }  

    catch (SmsException ex)  
    {  
        Console.WriteLine("Failed to assign advertisement. Error: " + ex.Message);  
        throw;  
    }  
}  

範例方法具有下列參數:

參數 Type 描述
connection

swbemServices
-管理: WqlConnectionManager
- VBScript: SWbemServices
SMS 提供者的有效連線。
existingCollectionID 字串 要與廣告產生關聯之現有集合的識別碼。
existingPackageID 字串 要與公告建立關聯之現有套件的識別碼。
existingProgramName 字串 與廣告相關聯之程式的名稱。
newAdvertisementName 字串 新廣告的名稱。
newAdvertisementComment 字串 新廣告的批註。
newAdvertisementFlags 整數 指定新廣告選項的旗標。
newRemoteClientFlags 整數 旗標,指定當用戶端在本機或遠端連線到發佈點時,程式應該如何執行。
newAdvertisementStartOfferDateTime 字串 第一次提供新廣告的時間。
newAdvertisementStartOfferEnabled 布林值 true 如果提供廣告,則為 。

編譯程式碼

C# 範例需要:

命名空間

  • System

  • Microsoft.ConfigurationManagement.ManagementProvider

  • Microsoft.ConfigurationManagement.ManagementProvider.WqlQueryEngine

組件

  • adminui.wqlqueryengine

  • microsoft.configurationmanagement.managementprovider

  • mscorlib

強大的程式設計

如需錯誤處理的詳細資訊,請參閱關於Configuration Manager錯誤

另請參閱