デプロイを作成する方法

次の例では、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;  
    }  
}  

このメソッドの例には、次のパラメーターがあります。

パラメーター 説明
connection

swbemServices
-管理: WqlConnectionManager
- VBScript: SWbemServices
SMS プロバイダーへの有効な接続。
existingCollectionID 文字列 提供情報を関連付ける既存のコレクションの ID。
existingPackageID 文字列 提供情報を関連付ける既存のパッケージの ID。
existingProgramName 文字列 提供情報に関連付けられているプログラムの名前。
newAdvertisementName 文字列 新しい提供情報の名前。
newAdvertisementComment 文字列 新しい広告のコメント。
newAdvertisementFlags 整数 新しい提供情報のオプションを指定するフラグ。
newRemoteClientFlags 整数 クライアントがローカルまたはリモートで配布ポイントに接続するときにプログラムを実行する方法を指定するフラグ。
newAdvertisementStartOfferDateTime 文字列 新しい広告が最初に提供される時刻。
newAdvertisementStartOfferEnabled ブール型 true 広告が提供される場合。

コードのコンパイル

C# の例では、次のものが必要です。

名前空間

  • System

  • Microsoft.ConfigurationManagement.ManagementProvider

  • Microsoft.ConfigurationManagement.ManagementProvider.WqlQueryEngine

Assembly

  • adminui.wqlqueryengine

  • microsoft.configurationmanagement.managementprovider

  • mscorlib

堅牢なプログラミング

エラー処理の詳細については、「Configuration Manager エラーについて」を参照してください。

関連項目