Freigeben über


Erstellen eines Workflows mit einem Windows PowerShell-Skript

Sie können einen Workflow erstellen, indem Sie ein Windows PowerShell Skript schreiben. Um einen Workflow zu erstellen, verwenden Sie das Workflowwort gefolgt von einem Namen für den Workflow vor dem Textkörper des Skripts. Beispiel:


workflow Invoke-HelloWorld {"Hello World from workflow"}

Sie finden den Workflow auf dieselbe Weise wie einen anderen Windows PowerShell Befehl.

Implementieren von Parallel und Sequenz

Windows Workflow Foundation unterstützt die Ausführung von Aktivitäten parallel. Verwenden Sie zum Implementieren dieser Funktion in einem Windows PowerShell-Skript das parallel Schlüsselwort vor einem Skriptblock. Sie können auch die foreach -parallel Konstruktion verwenden, um eine Sammlung von Objekten parallel zu iterieren. Um eine Gruppe von Aktivitäten in sequenzieller Reihenfolge in einem parallelen Block auszuführen, schließen Sie diese Gruppe von Aktivitäten in einem Skriptblock ein, und gehen Sie dem Block mit dem Sequenzschlüsselwort voraus.

Teilnehmen an Computern zu einer Domäne

Das folgende Skript erstellt einen Workflow, der den Domänenstatus einer Gruppe von benutzerspezifischen Computern überprüft, sie zu einer Domäne verknüpft, wenn sie noch nicht verbunden sind, und überprüft dann den Status erneut. Dies ist eine Skriptversion des XAML-Workflows, die im Erstellen eines Workflows mit Windows PowerShell Aktivitäten erläutert wird.

workflow Join-Domain
{
    param([string[]] $ComputerName, [PSCredential] $DomainCred, [PsCredential] $MachineCred)

    foreach -parallel($Computer in $ComputerName)
    {
        sequence {
        Get-WmiObject -PSComputerName $Computer -PSCredential $MachineCred
        Add-Computer -PSComputerName $Computer -PSCredential $DomainCred
        Restart-Computer -ComputerName $Computer -Credential $MachineCred -For PowerShell -Force -Wait -PSComputerName ""
        Get-WmiObject -PSComputerName $Computer -PSCredential $MachineCred
        }
    }
}