Windows PowerShell アクティビティでワークフローを作成する

Windows PowerShell ワークフローを作成するには、Visual Studio ツールボックスからアクティビティを選択し、[ワークフロー デザイナー] ウィンドウにドラッグします。 Visual Studio ツールボックスにWindows PowerShellアクティビティを追加する方法については、「Visual Studio ツールボックスへのWindows PowerShellアクティビティの追加」を参照してください。

次の手順では、ユーザー指定のコンピューターのグループのドメインの状態を確認し、まだ参加していない場合はドメインに参加させ、状態を再度確認するワークフローを作成する方法について説明します。

プロジェクトを設定する

  1. Visual Studio ツールボックスへのWindows PowerShell アクティビティの追加の手順に従ってワークフロー プロジェクトを作成し、Microsoft.Powershell.Activities アセンブリと Microsoft.Powershell.Management.Activities アセンブリからツールボックスにアクティビティを追加します。

  2. System.Management.Automation、Microsoft.PowerShell.Activities、System.Management、Microsoft.PowerShell.Management.Activities、および Microsoft.PowerShell.Commands.Management を参照アセンブリとしてプロジェクトに追加します。

ワークフローへのアクティビティの追加

  1. シーケンス アクティビティをワークフローに追加します。

  2. 引数の型を指定して名前を付けた ComputerName 引数を作成します String[]。 この引数は、チェックして参加させるコンピューターの名前を表します。

  3. System.Management.Automation.PSCredential 型の名前のDomainCred引数を作成します。 この引数は、コンピューターをドメインに参加させる権限を持つドメイン アカウントのドメイン資格情報を表します。

  4. System.Management.Automation.PSCredential 型の名前のMachineCred引数を作成します。 この引数は、コンピューター上の管理者が確認して参加する資格情報を表します。

  5. Sequence アクティビティ内に ParallelForEach アクティビティを追加します。 ループが配列の要素ComputerNameを反復処理するように、テキスト ボックスに入力compしますComputerName

  6. Sequence アクティビティを ParallelForEach アクティビティの本文に追加します。 シーケンスの DisplayName プロパティを次の値に JoinDomain設定します。

  7. GetWmiObject アクティビティを JoinDomain シーケンスに追加します。

  8. GetWmiObject アクティビティのプロパティを次のように編集します。

    プロパティ
    クラス "Win32_ComputerSystem"
    PSComputerName {comp}
    PSCredential MachineCred
  9. GetWmiObject アクティビティの後に、AddComputer アクティビティを JoinDomain シーケンスに追加します。

  10. AddComputer アクティビティのプロパティを次のように編集します。

    プロパティ
    [ComputerName] {comp}
    DomainCredential DomainCred
  11. AddComputer アクティビティの後に、 RestartComputer アクティビティを JoinDomain シーケンスに 追加 します。

  12. RestartComputer アクティビティのプロパティを次のように編集します。

    プロパティ
    [ComputerName] {comp}
    資格情報 MachineCred
    対象 Microsoft.PowerShell.Commands.WaitForServiceTypes.PowerShell
    Force True
    Wait True
    PSComputerName {""}
  13. RestartComputer アクティビティの後に、GetWmiObject アクティビティを JoinDomain シーケンスに追加します。 前の GetWmiObject アクティビティと同じプロパティを編集します。

    手順を完了すると、ワークフロー デザイン ウィンドウは次のようになります。

    ワークフロー デザイナーJoinDomainWorkflow の JoinDomain XAML