您可以建立 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 角色型系統管理。
另請參閱
物件概觀 如何使用 Managed 程式代碼連線到 Configuration Manager 中的 SMS 提供者如何使用 WMI 工作順序在 Configuration Manager 中連線到 SMS 提供者概觀如何建立作系統部署工作順序套件