Создание развертывания
В следующих примерах показано, как создать развертывание Configuration Manager с помощью класса SMS_Advertisement и его свойств.
Важно!
Учетной записи, создающей развертывание, требуется разрешение Развертывание пакетов для коллекции и Разрешение на чтение для пакета.
Обзор
Настройте подключение к поставщику 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 |
Строка | Идентификатор существующей коллекции, с которой связывается объявление. |
existingPackageID |
Строка | Идентификатор существующего пакета, с которым связывается объявление. |
existingProgramName |
Строка | Имя программы, связанной с объявлением. |
newAdvertisementName |
Строка | Имя нового объявления. |
newAdvertisementComment |
Строка | Комментарий к новому объявлению. |
newAdvertisementFlags |
Целое число | Флаги, указывающие параметры для нового объявления. |
newRemoteClientFlags |
Целое число | Флаги, указывающие, как должна выполняться программа, когда клиент подключается локально или удаленно к точке распространения. |
newAdvertisementStartOfferDateTime |
Строка | Время, когда новое объявление впервые предлагается. |
newAdvertisementStartOfferEnabled |
Boolean |
true Значение , если объявление предлагается. |
Компиляция программы
Для примера C# требуется следующее:
Пространства имен
System
Microsoft.ConfigurationManagement.ManagementProvider
Microsoft.ConfigurationManagement.ManagementProvider.WqlQueryEngine
Assembly
adminui.wqlqueryengine
microsoft.configurationmanagement.managementprovider
mscorlib
Надежное программирование
Дополнительные сведения об обработке ошибок см. в разделе Сведения об ошибках Configuration Manager.