您可以建立 SMS_TaskSequence 類別的執行個體,以建立Configuration Manager作業系統部署工作順序。
工作順序包含一或多個在用戶端電腦上循序執行的步驟。 如需詳細資訊,請參閱作業系統 部署任務序列物件模型。
工作順序接著會封裝在 SMS_TaskSequencePackage 中,並公告至用戶端電腦。
若要建立工作順序
設定與 SMS 提供者的連線。 如需詳細資訊,請參閱 SMS 提供者基礎。
建立工作順序
SMS_TaskSequence物件。新增動作,並視需要新增群組至動作。 如需詳細資訊,請參閱 如何新增作業系統部署工作順序動作。
將工作順序與工作順序套件建立關聯。 如需詳細資訊,請參閱 如何建立作業系統部署工作序列套件。
將工作順序公告到用戶端電腦。 如需詳細資訊,請參閱 如何建立廣告。
範例
下列範例方法會建立安裝軟體程式的工作順序。 此範例也會呼叫在如何 建立作業系統部署工作順序套件中定義的範例,以建立工作順序套件。
如需呼叫範例程式碼的詳細資訊,請參閱 呼叫 Configuration Manager 程式碼片段。
Sub CreateInstallSoftwareTaskSequence(connection,name, description, packageID, programName)
' Create the task sequence.
set taskSequence = connection.Get("SMS_TaskSequence").SpawnInstance_
' Create the action.
set action = connection.Get("SMS_TaskSequence_InstallSoftwareAction").SpawnInstance_
action.ProgramName=programName
action.PackageID=packageID
action.Name=name
action.Enabled=true
action.ContinueOnError=false
' Create an array to hold the action.
actionSteps= array(action)
' Add the array to the task sequence.
taskSequence.Steps=actionSteps
wscript.echo taskSequence.Steps(0).Name
call CreateTaskSequencePackage (connection, taskSequence)
End Sub
public void CreateInstallSoftwareTaskSequence(
WqlConnectionManager connection,
string name,
string packageId,
string programName)
{
try
{
// Create the task sequence.
IResultObject taskSequence = connection.CreateInstance("SMS_TaskSequence");
IResultObject ro = connection.CreateEmbeddedObjectInstance("SMS_TaskSequence_InstallSoftwareAction");
ro["ProgramName"].StringValue = programName;
ro["packageId"].StringValue = packageId;
ro["Name"].StringValue = name;
ro["Enabled"].BooleanValue = true;
ro["ContinueOnError"].BooleanValue = false;
// Add the step to the task sequence.
List<IResultObject> array = taskSequence.GetArrayItems("Steps");
array.Add(ro);
taskSequence.SetArrayItems("Steps", array);
// Create the task sequence package.
this.CreateTaskSequencePackage(connection, taskSequence);
}
catch (SmsException e)
{
Console.WriteLine("Failed to create Task Sequence: " + e.Message);
throw;
}
}
範例方法具有下列參數:
| 參數 | Type | 描述 |
|---|---|---|
Connection |
- 受控: WqlConnectionManager- VBScript: SWbemServices |
與 SMS 提供者的有效連線。 |
name |
- 受控: String- VBScript: String |
工作順序步驟名稱。 |
description |
- VBScript: String |
工作順序步驟描述。 |
packageID |
- 受控: String- VBScript: String |
包含要安裝之軟體的套件識別碼。 取得自 SMS_Package.PackageID。 |
programName |
- 受控: String- VBScript: String |
要安裝的程式名稱。 取得自 SMS_Program.ProgramName。 |
正在編譯程式碼
此 C# 範例需要:
命名空間
系統
System.Collections.Generic
System.Text
Microsoft.ConfigurationManagement.ManagementProvider
Microsoft.ConfigurationManagement.ManagementProvider.WqlQueryEngine
組件
Microsoft.ConfigurationManagement.ManagementProvider
adminui.wqlqueryengine
健全的程式設計
如需錯誤處理的詳細資訊,請參閱 關於 Configuration Manager 錯誤。
.NET Framework 安全性
如需保護 Configuration Manager 應用程式的詳細資訊,請參閱 Configuration Manager 角色型系統管理。
另請參閱
物件概觀如何使用託管程式碼連線到 Configuration Manager 中的 SMS 提供者如何使用 WMI 連線到 Configuration Manager 中的 SMS 提供者任務順序概觀如何建立作業系統部署任務序列套件