Delen via


Een takenreeks voor een besturingssysteemimplementatie maken

U maakt een Configuration Manager takenreeks voor de implementatie van het besturingssysteem door een exemplaar van de klasse SMS_TaskSequence te maken.

Een takenreeks bevat een of meer stappen die sequentieel worden uitgevoerd op de clientcomputer. Zie Takenreeksobjectmodel voor besturingssysteemimplementatie voor meer informatie.

De takenreeks wordt vervolgens verpakt in een SMS_TaskSequencePackage en aangekondigd op de clientcomputer.

Een takenreeks maken

  1. Een verbinding met de SMS-provider instellen. Zie Basisprincipes van SMS-provider voor meer informatie.

  2. Een takenreeksobject SMS_TaskSequence maken.

  3. Voeg acties toe en voeg, indien nodig, groepen toe aan de actie. Zie Een takenreeksactie voor besturingssysteemimplementatie toevoegen voor meer informatie.

  4. Koppel de takenreeks aan een takenreekspakket. Zie Een takenreekspakket voor besturingssysteemimplementatie maken voor meer informatie.

  5. Maak de takenreeks bekend op de clientcomputer. Zie Een advertentie maken voor meer informatie.

Voorbeeld

Met de volgende voorbeeldmethode wordt een takenreeks gemaakt waarmee een softwareprogramma wordt geïnstalleerd. In het voorbeeld wordt ook een takenreekspakket gemaakt door het voorbeeld aan te roepen dat is gedefinieerd in Een takenreekspakket voor besturingssysteemimplementatie maken.

Zie Aanroepen Configuration Manager codefragmenten voor meer informatie over het aanroepen van de voorbeeldcode.

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

De voorbeeldmethode heeft de volgende parameters:

Parameter Type Beschrijving
Connection -Beheerd: WqlConnectionManager
- VBScript: SWbemServices
Een geldige verbinding met de SMS-provider.
name -Beheerd: String
-Vbscript: String
De naam van de takenreeksstap.
description -Vbscript: String De beschrijving van de takenreeksstap.
packageID -Beheerd: String
-Vbscript: String
De pakket-id met de software die moet worden geïnstalleerd. Verkregen van SMS_Package.PackageID.
programName -Beheerd: String
-Vbscript: String
De naam van het programma dat moet worden geïnstalleerd. Verkregen van SMS_Program.ProgramName.

De code compileren

Voor dit C#-voorbeeld is het volgende vereist:

Naamruimten

Systeem

System.Collections.Generic

System.Text

Microsoft. ConfigurationManagement.ManagementProvider

Microsoft. ConfigurationManagement.ManagementProvider.WqlQueryEngine

Vergadering

microsoft.configurationmanagement.managementprovider

adminui.wqlqueryengine

Robuust programmeren

Zie Over Configuration Manager fouten voor meer informatie over foutafhandeling.

.NET Framework Beveiliging

Zie Configuration Manager op rollen gebaseerd beheer voor meer informatie over het beveiligen van Configuration Manager toepassingen.

Zie ook

Overzicht van objectenVerbinding maken met een SMS-provider in Configuration Manager met behulp van beheerde code
Verbinding maken met een SMS-provider in Configuration Manager met behulp van WMI
TakenreeksoverzichtEen takenreekspakket voor besturingssysteemimplementatie maken