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