Hinzufügen eines Schritts zu einer Betriebssystembereitstellungsgruppe
Sie fügen einer Tasksequenzgruppe für die Betriebssystembereitstellung in Configuration Manager einen Schritt (eine Aktion oder eine Gruppe) hinzu, indem Sie den Schritt der SMS_TaskSequenceGroup.Steps
Arrayeigenschaft hinzufügen.
So fügen Sie einer Tasksequenzgruppe einen Schritt hinzu
Richten Sie eine Verbindung mit dem SMS-Anbieter ein. Weitere Informationen finden Sie unter Grundlagen des SMS-Anbieters.
Rufen Sie das SMS_TaskSequenceGroup-Objekt ab, dem Sie den Schritt hinzufügen möchten. Weitere Informationen finden Sie unter Erstellen einer Tasksequenzgruppe für die Betriebssystembereitstellung.
Erstellen Sie den Tasksequenzschritt. Ein Beispiel für das Erstellen eines Aktionsschritts finden Sie unter Hinzufügen einer Tasksequenzaktion für die Betriebssystembereitstellung.
Fügen Sie den Schritt der
SMS_TaskSequenceGroup.Steps
Arrayeigenschaft hinzu.Ordnen Sie den Schritt innerhalb der Arrayeigenschaft nach Bedarf neu an. Weitere Informationen finden Sie unter Erneutes Anordnen einer Tasksequenz für die Betriebssystembereitstellung.
Beispiel
Die folgende Beispielmethode fügt einer Tasksequenzgruppe eine Befehlszeilenaktion hinzu.
Informationen zum Aufrufen des Beispielcodes finden Sie unter Aufrufen von Configuration Manager Codeausschnitten.
Sub AddStepToGroup(taskSequenceStep, group)
Dim steps
' If needed, create a new steps array.
If IsNull(group.Steps) Then
steps = Array(taskSequenceStep)
group.Steps=steps
Else
' Resize the existing steps and add step.
steps= Array(group.Steps)
ReDim steps (UBound (group.Steps)+1)
group.Steps(UBound(steps))=taskSequenceStep
End if
End Sub
public void AddStepToGroup(
WqlConnectionManager connection,
IResultObject taskSequence,
string groupName)
{
try
{
// Get the group.
List<IResultObject> steps = taskSequence.GetArrayItems("Steps"); // Array of SMS_TaskSequence_Steps.
foreach (IResultObject ro in steps)
{
if (ro["Name"].StringValue == groupName && ro["__CLASS"].StringValue == "SMS_TaskSequence_Group")
{
IResultObject action = connection.CreateEmbeddedObjectInstance("SMS_TaskSequence_RunCommandLineAction");
action["CommandLine"].StringValue = @"C:\donowtingroup.bat";
action["Name"].StringValue = "Action in group " + groupName;
action["Description"].StringValue = "Action in a group";
action["Enabled"].BooleanValue = true;
action["ContinueOnError"].BooleanValue = false;
// Add the step to the task sequence.
List<IResultObject> array = ro.GetArrayItems("Steps");
array.Add(action);
ro.SetArrayItems("Steps", array);
taskSequence.SetArrayItems("Steps", steps);
break;
}
}
}
catch (SmsException e)
{
Console.WriteLine("Failed to create Task Sequence: " + e.Message);
throw;
}
}
Die Beispielmethode verfügt über die folgenden Parameter:
Parameter | Typ | Beschreibung |
---|---|---|
connection |
-Verwalteten: WqlConnectionManager – VBScript: SWbemServices |
Eine gültige Verbindung mit dem SMS-Anbieter. |
taskSequence taskSequenceStep |
-Verwalteten: IResultObject – VBScript: SWbemObject |
– Eine gültige Tasksequenz (SMS_TaskSequence), die die Gruppe enthält. |
groupName group |
-Verwalteten: String -Vbscript: String |
Der Name der Gruppe, der die Befehlszeilenaktion hinzugefügt wird. Dies wird von der SMS_TaskSequenceGroup.Name -Eigenschaft abgerufen. |
Kompilieren des Codes
Für dieses C#-Beispiel ist Folgendes erforderlich:
Namespaces
System
System.Collections.Generic
System.Text
Microsoft. ConfigurationManagement.ManagementProvider
Microsoft. ConfigurationManagement.ManagementProvider.WqlQueryEngine
Assembly
microsoft.configurationmanagement.managementprovider
adminui.wqlqueryengine
Robuste Programmierung
Weitere Informationen zur Fehlerbehandlung finden Sie unter Informationen zu Configuration Manager Fehlern.
.NET Framework-Sicherheit
Weitere Informationen zum Schützen Configuration Manager Anwendungen finden Sie unter Configuration Manager rollenbasierte Verwaltung.
Siehe auch
Objektübersicht: Herstellen einer Verbindung mit einem SMS-Anbieter in Configuration Manager mithilfe von verwaltetem Code
Herstellen einer Verbindung mit einem SMS-Anbieter in Configuration Manager mithilfe von WMI
Verschieben eines Schritts in eine andere Tasksequenzgruppe für die Betriebssystembereitstellung
Erstellen einer Tasksequenzgruppe für die Betriebssystembereitstellung
Entfernen eines Schritts aus einer Betriebssystembereitstellungsgruppe
Übersicht über Aufgabensequenzen