Jak dodać akcję sekwencji zadań wdrażania systemu operacyjnego
Akcja sekwencji zadań wdrażania systemu operacyjnego jest dodawana do sekwencji zadań w Configuration Manager przez utworzenie wystąpienia klasy pochodnej SMS_TaskSequence_Action, a następnie dodanie jej do kroków sekwencji zadań.
Uwaga
Configuration Manager ma wiele wbudowanych akcji, których można użyć. Na przykład klasa akcji wiersza polecenia jest SMS_TaskSequence_RunCommandLineAction. Klasy te pochodzą z klasy SMS_TaskSequence_Action .
SMS_TaskSequenceAction pochodzi od klasy SMS_TaskSequence_Step , która jest klasą podstawową zarówno dla akcji, jak i grup. Sekwencja zadań przechowuje swoje kroki w tablicy SMS_TaskSequence_Step, dzięki czemu akcje i grupy mogą być przechowywane razem.
Aby dodać akcję sekwencji zadań
Skonfiguruj połączenie z dostawcą programu SMS. Aby uzyskać więcej informacji, zobacz podstawy dostawcy programu SMS.
Utwórz obiekt sekwencji zadań (SMS_TaskSequence). Aby uzyskać więcej informacji, zobacz How to Create an Operating System Deployment Task Sequence (Jak utworzyć sekwencję zadań wdrażania systemu operacyjnego).
Utwórz wystąpienie klasy pochodnej SMS_TaskSequenceAction, na przykład SMS_TaskSequence_RunCommandLineAction, dla żądanej akcji.
Wypełnij akcję odpowiednio.
Dodaj akcję do kroków sekwencji zadań. Jest ona przechowywana we właściwości kroki klasy SMS_TaskSequence).
Przykład
Poniższa przykładowa metoda tworzy akcję wiersza polecenia i dodaje ją do dostarczonej sekwencji zadań.
Aby uzyskać informacje na temat wywoływania przykładowego kodu, zobacz Wywoływanie fragmentów kodu Configuration Manager.
Sub AddTaskSequenceActionCommandLine(connection, taskSequence, name, description)
Dim steps
Dim action
Set action = connection.Get("SMS_TaskSequence_RunCommandLineAction").SpawnInstance_
action.CommandLine = "cmd /c Echo Hello"
action.Name=name
action.Description=description
action.Enabled=True
action.ContinueOnError=False
If IsNull(taskSequence.Steps) Then
steps = Array(action)
taskSequence.Steps=steps
Else
steps= Array(taskSequence.Steps)
ReDim steps (UBound (taskSequence.Steps)+1)
taskSequence.Steps(UBound(steps))=action
End if
End Sub
public IResultObject AddTaskSequenceActionCommandLine(
WqlConnectionManager connection,
IResultObject taskSequence,
string name,
string description)
{
try
{
// Create the new step.
IResultObject ro;
ro = connection.CreateEmbeddedObjectInstance("SMS_TaskSequence_RunCommandLineAction");
ro["CommandLine"].StringValue = @"cmd /c Echo Hello";
ro["Name"].StringValue = name;
ro["Description"].StringValue = description;
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);
return ro;
}
catch (SmsException e)
{
Console.WriteLine("Failed to add action: " + e.Message);
throw;
}
}
Przykładowa metoda ma następujące parametry:
Parametr | Wpisać | Opis |
---|---|---|
connection |
-Zarządzane: WqlConnectionManager - VBScript: SWbemServices |
Prawidłowe połączenie z dostawcą programu SMS. |
taskSequence |
-Zarządzane: IResultObject - VBScript: SWbemObject |
Prawidłowa sekwencja zadań. |
Name |
-Zarządzane: String -Vbscript: String |
Nazwa nowej akcji. |
Description |
-Zarządzane: String -Vbscript: String |
Opis akcji. |
Kompilowanie kodu
Ten przykład języka C# wymaga:
Obszary nazw
System
System.collections.generic
System.text
Microsoft. ConfigurationManagement.ManagementProvider
Microsoft. ConfigurationManagement.ManagementProvider.WqlQueryEngine
Zestawu
microsoft.configurationmanagement.managementprovider
adminui.wqlqueryengine
Niezawodne programowanie
Aby uzyskać więcej informacji na temat obsługi błędów, zobacz Informacje o błędach Configuration Manager.
zabezpieczenia .NET Framework
Aby uzyskać więcej informacji na temat zabezpieczania aplikacji Configuration Manager, zobacz Configuration Manager administracja oparta na rolach.
Zobacz też
Omówienie obiektówJak dodać warunek do kroku sekwencji zadań wdrażania systemu operacyjnego
Jak nawiązać połączenie z dostawcą programu SMS w Configuration Manager przy użyciu kodu zarządzanego
Jak nawiązać połączenie z dostawcą programu SMS w Configuration Manager przy użyciu usługi WMI
Jak utworzyć grupę sekwencji zadań wdrażania systemu operacyjnego
Jak usunąć akcję sekwencji zadań wdrażania systemu operacyjnego
Omówienie sekwencji zadań