Поделиться через


Назначение базовых показателей конфигурации

В Configuration Manager для назначения базовой конфигурации коллекции создается экземпляр назначения, заполняется минимальным набором обязательных значений и сохраняется.

Назначение базовых показателей конфигурации

  1. Настройте подключение к поставщику SMS.

  2. Создайте экземпляр SMS_BaselineAssignment.

  3. Заполните свойства экземпляра.

  4. Сохраните новый SMS_BaselineAssignment экземпляр.

Пример

В следующих примерах кода показано, как создать экземпляр базового назначения.

Сведения о вызове примера кода см. в разделе Вызов фрагментов кода Configuration Manager.


Sub DCMCreateAssignment(swbemServices,                     _  
                        baselineID,                        _  
                        applyToSubTargets,                 _  
                        assignmentAction,                  _  
                        assignmentName,                    _  
                        assignmentDescription,             _  
                        desiredConfigType,                 _  
                        distributionPointLocality,         _  
                        evaluationSchedule,                _  
                        logComplianceToWinEvent,           _  
                        notifyUser,                        _  
                        sendDetailedNonComplianceStatus,   _  
                        startTime,                         _  
                        suppressReboot,                    _  
                        targetCollectionID,                _  
                        useGMTTimes)  

' Create new assignment object.  
set newAssignment = swbemServices.Get("SMS_BaselineAssignment").SpawnInstance_()        

' Assign variable values to assignment properties.  
'    //  
'    // The following properties are set by the provider on put():  
'    //     AssignmentID  
'    //     AssignmentUniqueID  
'    //     SourceSite  
'    //     CreationTime  

newAssignment.ApplyToSubTargets = applyToSubTargets   
newAssignment.AssignmentAction = assignmentAction   
newAssignment.AssignmentName = assignmentName   
newAssignment.AssignmentDescription = assignmentDescription   
newAssignment.DesiredConfigType = desiredConfigType   
newAssignment.DPLocality = distributionPointLocality   
newAssignment.EvaluationSchedule = evaluationSchedule   
newAssignment.LogComplianceToWinEvent = logComplianceToWinEvent   
newAssignment.NotifyUser = notifyUser   
newAssignment.SendDetailedNonComplianceStatus = sendDetailedNonComplianceStatus   
newAssignment.StartTime = startTime   
newAssignment.SuppressReboot = suppressReboot   
newAssignment.TargetCollectionID = targetCollectionID   
newAssignment.UseGMTTimes = useGMTTimes   
newAssignment.AssignedCIs = Array(baselineID)   

' Save assignment.  
newAssignment.Put_  

Wscript.Echo " "  
Wscript.Echo "Created new assignment."      

End Sub  


public void DCMCreateAssignment(WqlConnectionManager connection,  
                                bool applyToSubTargets,  
                                int assignmentAction,  
                                string assignmentName,  
                                string assignmentDescription,  
                                string desiredConfigType,  
                                int distributionPointLocality,  
                                string evaluationSchedule,  
                                bool logComplianceToWinEvent,  
                                bool notifyUser,  
                                bool sendDetailedNonComplianceStatus,  
                                string startTime,  
                                int suppressReboot,  
                                string targetCollectionID,  
                                bool useGMTTimes,  
                                int baselineID)  
{  

    // Set required variables.   
    // Set AssignedCIs like array with a known baseline id (this is the initial creation of the assignment, so no existing values).  
    int[] arrayBaselineNumbers = new int[] { baselineID };  

    try  
    {  
        // Create new assignment object.  
        IResultObject newAssignment = connection.CreateInstance("SMS_BaselineAssignment");  

        // Assign variable values to assignment properties.  
        //  
        // The following properties are set by the provider on put():  
        //     AssignmentID  
        //     AssignmentUniqueID  
        //     SourceSite  
        //     CreationTime  
        newAssignment["ApplyToSubTargets"].BooleanValue = applyToSubTargets;  
        newAssignment["AssignmentAction"].IntegerValue = assignmentAction;  
        newAssignment["AssignmentName"].StringValue = assignmentName;  
        newAssignment["AssignmentDescription"].StringValue = assignmentDescription;  
        newAssignment["DesiredConfigType"].StringValue = desiredConfigType;  
        newAssignment["DPLocality"].IntegerValue = distributionPointLocality;  
        newAssignment["EvaluationSchedule"].StringValue = evaluationSchedule;  
        newAssignment["LogComplianceToWinEvent"].BooleanValue = logComplianceToWinEvent;  
        newAssignment["NotifyUser"].BooleanValue = notifyUser;  
        newAssignment["SendDetailedNonComplianceStatus"].BooleanValue = sendDetailedNonComplianceStatus;  
        newAssignment["StartTime"].StringValue = startTime;  
        newAssignment["SuppressReboot"].IntegerValue = suppressReboot;  
        newAssignment["TargetCollectionID"].StringValue = targetCollectionID;  
        newAssignment["AssignedCIs"].IntegerArrayValue = arrayBaselineNumbers;  
        newAssignment["UseGMTTimes"].BooleanValue = useGMTTimes;  

        // Save assignment object.  
        newAssignment.Put();  
    }  
    catch (SmsException ex)  
    {  
        Console.WriteLine("Failed to create new assignment." + "\\n" + ex.Message);  
        throw;  
    }  

    Console.WriteLine("Created new assignment.");  

}  

Метод примера имеет следующие параметры:

Параметр Тип Описание
- connection
- swbemServices
-Управляемых: WqlConnectionManager
— VBScript: SWbemServices
Допустимое подключение к поставщику SMS.
applyToSubTargets -Управляемых: Boolean
-Vbscript: Boolean
true , чтобы применить назначение элемента конфигурации к подколлективу.
assignmentAction -Управляемых: Integer
-Vbscript: Integer
Действие, связанное с назначением элемента конфигурации.
assignmentName -Управляемых: String
-Vbscript: String
assignmentName
assignmentDescription -Управляемых: String
-Vbscript: String
Имя локального назначения.
desiredConfigType -Управляемых: String
-Vbscript: String
Тип элемента конфигурации.
distributionPointLocality -Управляемых: Integer
-Vbscript: Integer
Флаги, определяющие, как клиент получает точки распространения в соответствии с расположением точки распространения.
evaluationSchedule -Управляемых: String
-Vbscript: String
Расписание оценки назначения.
logComplianceToWinEvent -Управляемых: Boolean
-Vbscript: Boolean
true , чтобы регистрировать состояние соответствия в журналах событий Windows.
notifyUser -Управляемых: Boolean
-Vbscript: Boolean
true для уведомления пользователя о доступности элемента конфигурации.
sendDetailedNonComplianceStatus -Управляемых: Boolean
-Vbscript: Boolean
true для отправки подробного сообщения о состоянии несоответствия.
startTime -Управляемых: String
-Vbscript: String
Дата и время первоначального предложения назначения элемента конфигурации.
suppressReboot -Управляемых: Integer
-Vbscript: Integer
Значение, указывающее, не следует ли клиенту перезагружать компьютер, если после применения элемента конфигурации ожидается перезагрузка.
targetCollectionID -Управляемых: String
-Vbscript: String
Идентификатор коллекции, к которой предназначено назначение.
useGMTTimes -Управляемых: Boolean
-Vbscript: Boolean
true Значение , если время и расписания находятся в формате UTC.
baselineID — Управляемый: Integer массив
— VBScript: Integer Array
Массив идентификаторов для элементов конфигурации, предназначенных для назначения.

Компиляция программы

Пространства имен

System;

System.Collections.Generic;

System.ComponentModel

Майкрософт. ConfigurationManagement.ManagementProvider

Майкрософт. ConfigurationManagement.ManagementProvider.WqlQueryEngine

Assembly

adminui.wqlqueryengine

microsoft.configurationmanagement.managementprovider

Надежное программирование

Дополнительные сведения об обработке ошибок см. в разделе Сведения об ошибках Configuration Manager.

Безопасность .NET Framework

Дополнительные сведения о защите приложений Configuration Manager см. в статье Configuration Manager администрирование на основе ролей.

См. также

Сведения о базовых показателях конфигурации и элементах конфигурации
Общие сведения об объектах. Подключение к поставщику Configuration Manager с помощью управляемого кода
Подключение к поставщику Configuration Manager с помощью WMI
Класс WMI сервера SMS_BaselineAssignment