So erstellen Sie eine Tasksequenz für die Betriebssystembereitstellung

Sie erstellen eine Configuration Manager Tasksequenz für die Betriebssystembereitstellung, indem Sie eine instance der SMS_TaskSequence Klasse erstellen.

Eine Tasksequenz enthält einen oder mehrere Schritte, die nacheinander auf dem Clientcomputer ausgeführt werden. Weitere Informationen finden Sie unter Tasksequenzobjektmodell für die Betriebssystembereitstellung.

Die Tasksequenz wird dann in einem SMS_TaskSequencePackage verpackt und dem Clientcomputer angekündigt.

So erstellen Sie eine Tasksequenz

  1. Richten Sie eine Verbindung mit dem SMS-Anbieter ein. Weitere Informationen finden Sie unter Grundlagen des SMS-Anbieters.

  2. Erstellen Sie ein Tasksequenzobjekt SMS_TaskSequence .

  3. Fügen Sie der Aktion Aktionen hinzu und ggf. Gruppen hinzu. Weitere Informationen finden Sie unter So fügen Sie eine Tasksequenzaktion für die Betriebssystembereitstellung hinzu.

  4. Ordnen Sie die Tasksequenz einem Tasksequenzpaket zu. Weitere Informationen finden Sie unter So erstellen Sie ein Tasksequenzpaket für die Betriebssystembereitstellung.

  5. Kündigen Sie die Tasksequenz dem Clientcomputer an. Weitere Informationen finden Sie unter Erstellen einer Anzeige.

Beispiel

Mit der folgenden Beispielmethode wird eine Tasksequenz erstellt, die ein Softwareprogramm installiert. Das Beispiel erstellt auch ein Tasksequenzpaket, indem das Beispiel aufgerufen wird, das in So erstellen Sie ein Tasksequenzpaket für die Betriebssystembereitstellung definiert ist.

Informationen zum Aufrufen des Beispielcodes finden Sie unter Aufrufen von Configuration Manager-Codeausschnitten.

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;
    }
}

Die Beispielmethode hat die folgenden Parameter:

Parameter Typ Beschreibung
Connection - Verwaltet: WqlConnectionManager
- VBScript: SWbemDienste
Eine gültige Verbindung mit dem SMS-Anbieter.
name - Verwaltet: String
- VBScript: String
Name des Tasksequenzschritts.
description - VBScript: String Die Beschreibung der Tasksequenzschritte.
packageID - Verwaltet: String
- VBScript: String
Die Paketkennung, die die zu installierende Software enthält. Abgerufen von SMS_Package.PackageID.
programName - Verwaltet: String
- VBScript: String
Der Name des Programms, das installiert werden soll. Abgerufen von SMS_Program.ProgramName.

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 – ÜbersichtHerstellen einer Verbindung mit einem SMS-Anbieter in Configuration Manager mithilfe von verwaltetem CodeHerstellen einer Verbindung mit einem SMS-Anbieter im Configuration Manager mithilfe von WMIÜbersicht über TasksequenzenSo erstellen Sie ein Tasksequenzpaket für die Betriebssystembereitstellung