如何创建部署
以下示例演示如何使用 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 |
String | 要与之关联的播发的现有集合的 ID。 |
existingPackageID |
String | 要与之关联的播发的现有包的 ID。 |
existingProgramName |
String | 与播发关联的程序的名称。 |
newAdvertisementName |
String | 新播发的名称。 |
newAdvertisementComment |
String | 新广告的注释。 |
newAdvertisementFlags |
整数 | 指定新播发选项的标志。 |
newRemoteClientFlags |
整数 | 指定客户端在本地或远程连接到分发点时程序应如何运行的标志。 |
newAdvertisementStartOfferDateTime |
String | 首次提供新广告的时间。 |
newAdvertisementStartOfferEnabled |
Boolean |
true 如果提供广告,则为 。 |
编译代码
C# 示例需要:
命名空间
System
Microsoft.ConfigurationManagement.ManagementProvider
Microsoft.ConfigurationManagement.ManagementProvider.WqlQueryEngine
Assembly
adminui.wqlqueryengine
microsoft.configurationmanagement.managementprovider
mscorlib
可靠性编程
有关错误处理的详细信息,请参阅关于Configuration Manager错误。