Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Eine Tasksequenzaktion für die Betriebssystembereitstellung wird Configuration Manager einer Tasksequenz hinzugefügt, indem eine instance einer von SMS_TaskSequence_Action abgeleiteten Klasse erstellt und anschließend den Schritten der Tasksequenz hinzugefügt wird.
Hinweis
Configuration Manager verfügt über eine Reihe integrierter Aktionen, die Sie verwenden können. Beispielsweise ist die Befehlszeilen-Aktionsklasse SMS_TaskSequence_RunCommandLineAction. Diese Klassen werden von der SMS_TaskSequence_Action Klasse abgeleitet.
SMS_TaskSequenceAction wird von der Klasse SMS_TaskSequence_Step abgeleitet, die die Basisklasse für Aktionen und Gruppen ist. Die Tasksequenz speichert ihre Schritte in einem Array von SMS_TaskSequence_Step, sodass Aktionen und Gruppen zusammen gespeichert werden können.
So fügen Sie eine Tasksequenzaktion hinzu
Richten Sie eine Verbindung mit dem SMS-Anbieter ein. Weitere Informationen finden Sie unter Grundlagen des SMS-Anbieters.
Erstellen Sie ein Tasksequenzobjekt (SMS_TaskSequence). Weitere Informationen finden Sie unter So erstellen Sie eine Tasksequenz für die Betriebssystembereitstellung.
Erstellen Sie eine SMS_TaskSequenceAction abgeleitete Klasse instance, z. B. SMS_TaskSequence_RunCommandLineAction, für die gewünschte Aktion.
Füllen Sie die Aktion entsprechend aus.
Fügen Sie die Aktion den Tasksequenzschritten hinzu. Hier wird die Steps-Eigenschaft SMS_TaskSequence) der Klasse gespeichert.
Beispiel
Mit der folgenden Beispielmethode wird eine Befehlszeilenaktion erstellt und der bereitgestellten Tasksequenz hinzugefügt.
Informationen zum Aufrufen des Beispielcodes finden Sie unter Aufrufen von Configuration Manager-Codeausschnitten.
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;
}
}
Die Beispielmethode hat die folgenden Parameter:
| Parameter | Typ | Beschreibung |
|---|---|---|
connection |
- Verwaltet: WqlConnectionManager- VBScript: SWbemDienste |
Eine gültige Verbindung mit dem SMS-Anbieter. |
taskSequence |
- Verwaltet: IResultObject- VBScript: SWbemObject |
Eine gültige Tasksequenz. |
Name |
- Verwaltet: String- VBScript: String |
Ein Name für die neue Aktion. |
Description |
- Verwaltet: String- VBScript: String |
Eine Beschreibung für die Aktion |
Kompilieren des Codes
Dieses C#-Beispiel erfordert:
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 Sichern von Configuration Manager-Anwendungen finden Sie unter rollenbasierte Verwaltung von Configuration Manager.
Siehe auch
Objekte – ÜbersichtSo fügen Sie einer Betriebssystembereitstellung eine Bedingung hinzu Tasksequenzschritt So stellen Sie mithilfe von verwaltetem Code eine Verbindung mit einem SMS-Anbieter im Configuration Managerher Herstellen einer Verbindung mit einem SMS-Anbieter im Configuration Manager mithilfe von WMISo erstellen Sie eine Tasksequenzgruppefür die BetriebssystembereitstellungSo löschen Sie eine Betriebssystembereitstellung TasksequenzaktionÜbersicht über die Tasksequenz