Jak dodać akcję sekwencji zadań wdrażania systemu operacyjnego

Akcja sekwencji zadań wdrażania systemu operacyjnego jest dodawana do sekwencji zadań w Configuration Manager, tworząc wystąpienie klasy pochodnej SMS_TaskSequence_Action, a następnie dodając ją do kroków sekwencji zadań.

Uwaga

Program Configuration Manager zawiera wiele wbudowanych akcji, których można użyć. Na przykład klasą akcji wiersza polecenia jest SMS_TaskSequence_RunCommandLineAction. Te klasy wywodzą się z klasy SMS_TaskSequence_Action .

SMS_TaskSequenceAction pochodzi z klasy SMS_TaskSequence_Step , która jest klasą bazową zarówno dla akcji, jak i grup. Sekwencja zadań przechowuje swoje kroki w tablicy SMS_TaskSequence_Step, umożliwiając w ten sposób przechowywanie akcji i grup razem.

Aby dodać akcję sekwencji zadań

  1. Konfigurowanie połączenia z dostawcą usługi SMS. Aby uzyskać więcej informacji, zobacz Podstawy dostawcy SMS.

  2. Tworzenie obiektu sekwencji zadań (SMS_TaskSequence). Aby uzyskać więcej informacji, zobacz Jak utworzyć sekwencję zadań wdrażania systemu operacyjnego.

  3. Utwórz wystąpienie klasy pochodnej SMS_TaskSequenceAction , na przykład SMS_TaskSequence_RunCommandLineAction, dla żądanej akcji.

  4. Wypełnij akcję stosownie do potrzeb.

  5. Dodaj akcję do kroków sekwencji zadań. Jest ona przechowywana we właściwości klasy SMS_TaskSequence) Steps.

Przykład

Poniższa przykładowa metoda tworzy akcję wiersza polecenia i dodaje ją do podanej sekwencji zadań.

Aby uzyskać informacje na temat wywoływania przykładowego kodu, zobacz Wywoływanie fragmentów kodu programu Configuration Manager.

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

Przykładowa metoda ma następujące parametry:

Parametr Wpisać Opis
connection - Zarządzane: WqlConnectionManager
- VBScript: SWbemServices
Prawidłowe połączenie z dostawcą SMS.
taskSequence - Zarządzane: IResultObject
- VBScript: SWbemObject
Prawidłowa sekwencja zadań.
Name - Zarządzane: String
- VBScript: String
Nazwa nowej akcji.
Description - Zarządzane: String
- VBScript: String
Opis akcji.

Kompilowanie kodu

Ten przykład języka C# wymaga:

Przestrzenie nazw

System

System.Collections.Generic

System.Text

Microsoft.ConfigurationManagement.ManagementProvider

Microsoft.ConfigurationManagement.ManagementProvider.WqlQueryEngine

Montaż

microsoft.configurationmanagement.managementprovider

adminui.wqlqueryengine

Wydajne programowanie

Aby uzyskać więcej informacji na temat obsługi błędów, zobacz Informacje o błędach programu Configuration Manager.

Zabezpieczenia platformy .NET Framework

Aby uzyskać więcej informacji na temat zabezpieczania aplikacji programu Configuration Manager, zobacz Administracja oparta na rolach programu Configuration Manager.

Zobacz też

Omówienie obiektówJak dodać warunek do etapu sekwencji zadań wdrażania systemu operacyjnegoJak połączyć się z dostawcą wiadomości SMS w programie Configuration Manager przy użyciu kodu zarządzanegoJak połączyć się z dostawcą wiadomości SMS w programie Configuration Manager przy użyciu usługi WMIJak utworzyć grupęsekwencji zadań wdrażania systemu operacyjnegoJak usunąć system operacyjny Akcja sekwencji zadań wdrażania Omówieniesekwencji zadań