デプロイを作成する方法
次の例では、SMS_Advertisement クラスとそのプロパティを使用してConfiguration Managerデプロイを作成する方法を示します。
重要
デプロイを作成するアカウントには、コレクションの [パッケージの展開] アクセス許可とパッケージの 読み取り アクセス許可が必要です。
概要
SMS プロバイダーへの接続を設定します。
クラスの新しいオブジェクトを
SMS_Advertisement
作成します。新しい提供情報のプロパティを設定します。
新しい提供情報とプロパティを保存します。
例
次の例では、ソフトウェア配布のアドバタイズを作成します。
サンプル コードの呼び出しの詳細については、「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 エラーについて」を参照してください。