So erstellen Sie ein Tasksequenzpaket für die Betriebssystembereitstellung

Sie erstellen eine Tasksequenz für die Betriebssystembereitstellung in Configuration Manager, indem Sie eine instance der SMS_TaskSequencePackage Klasse erstellen. Diese Klasse wird von der SMS_Package Klasse abgeleitet und enthält die Tasksequenz. Sie wird Clients angekündigt, die dann die Tasksequenz ausführen können. Die Tasksequenz wird mithilfe der SMS_TaskSequencePackageSetSequence-Methode der Klasse dem Tasksequenzpaket zugeordnet.

Sie können Tasksequenzpakete in Kategorien organisieren, indem Sie ihnen mit der SMS_TaskSequence Category-Eigenschaft der Klasse eine Kategorie zuweisen.

Weitere Informationen zum Erstellen von Tasksequenzen finden Sie unter Erstellen einer Tasksequenz. Weitere Informationen zu Tasksequenzpaketen finden Sie unter Tasksequenz-Objektmodell.

Sie kündigen ein Tasksequenzpaket auf die gleiche Weise an, wie Sie ein Configuration Manager-Paket SMS_Packageankündigen. Weitere Informationen finden Sie unter Erstellen einer Anzeige.

So erstellen Sie ein Tasksequenzpaket

  1. Richten Sie eine Verbindung mit dem SMS-Anbieter ein. Weitere Informationen finden Sie unter Informationen zum SMS-Anbieter im Configuration Manager.

  2. Create an instance of SMS_TaskSequencePackage.

  3. Füllen Sie die Eigenschaften des Tasksequenzpakets aus.

  4. Rufen Sie die SMS_TaskSequencePackage Klassenmethode SetSequence auf, um dem Tasksequenzpaket eine Tasksequenz (SMS_TaskSequence) zuzuordnen.

Beispiel

Mit der folgenden Beispielmethode wird ein Tasksequenzpaket (SMS_TaskSequencePackage) erstellt und die Tasksequenz (SMS_TaskSequence) diesem zugeordnet.

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

Sub CreateTaskSequencePackage (connection, taskSequence)

    Dim taskSequencePackage
    Dim packageClass
    Dim objInParams
    Dim objOutParams

    ' Create the new package object.
    Set taskSequencePackage = connection.Get("SMS_TaskSequencePackage").SpawnInstance_

    ' Populate the new package properties.
    taskSequencePackage.Name = "New task sequence package"
    taskSequencePackage.Description = "A new task sequence package description"

    ' Get the parameters object.
    Set packageClass = connection.Get("SMS_TaskSequencePackage")

    Set objInParams = packageClass.Methods_("SetSequence"). _
        inParameters.SpawnInstance_()

    ' Add the input parameters.
    objInParams.TaskSequence =  taskSequence
    objInParams.TaskSequencePackage = taskSequencePackage

    ' Add the sequence.
     Set objOutParams = connection.ExecMethod("SMS_TaskSequencePackage", "SetSequence", objInParams)

End Sub

public IResultObject CreateTaskSequencePackage(
    WqlConnectionManager connection,
    IResultObject taskSequence)
{
    try
    {
        Dictionary<string, object> inParams = new Dictionary<string, object>();

        // Create the new task sequence package.
        IResultObject taskSequencePackage = connection.CreateInstance("SMS_TaskSequencePackage");

        taskSequencePackage["Name"].StringValue = "New task sequence package";
        taskSequencePackage["Description"].StringValue = "A brand new task sequence package";
        taskSequencePackage["Category"].StringValue = "A custom category";

        // Note. Add other package properties as required.

        // Set up parameters that associate the task sequence with the package.
        inParams.Add("TaskSequence", taskSequence);
        inParams.Add("TaskSequencePackage", taskSequencePackage);

        // Associate the task sequence with the package. Note that a call to Put is not required.
        IResultObject result = connection.ExecuteMethod("SMS_TaskSequencePackage", "SetSequence", inParams);

        // The path to the new package.
        Console.WriteLine(result["SavedTaskSequencePackagePath"].StringValue);

        return taskSequencePackage;
    }
    catch (SmsException e)
    {
        Console.WriteLine("Failed to create Task Sequence: " + e.Message);
        throw;
    }
}

Diese 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 SMS_TaskSequence

Kompilieren des Codes

Das 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 WMISo erstellen Sie eine TasksequenzÜbersicht über die Tasksequenz