共用方式為


如何指派設定基準

在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.");  

}  

範例方法具有下列參數:

參數 Type 描述
- 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 - Managed: Integer 陣列
- VBScript: Integer 陣列
指派目標群組態專案的識別碼陣列。

正在編譯程式碼

命名空間

系統

System.Collections.Generic

System.ComponentModel

Microsoft。ConfigurationManagement.ManagementProvider

Microsoft。ConfigurationManagement.ManagementProvider.WqlQueryEngine

組件

adminui.wqlqueryengine

microsoft.configurationmanagement.managementprovider

健全的程式設計

如需錯誤處理的詳細資訊,請參閱關於Configuration Manager錯誤

.NET Framework 安全性

如需保護Configuration Manager應用程式的詳細資訊,請參閱Configuration Manager角色型系統管理

另請參閱

關於設定基準和設定專案
物件概觀如何使用 Managed 程式碼連線到Configuration Manager提供者
如何使用 WMI 連線到Configuration Manager提供者
SMS_BaselineAssignment伺服器 WMI 類別