Robot
2021.10
バナーの背景画像
Robot ガイド
最終更新日 2023年10月25日

バックグラウンド プロセスの自動化

注: この機能は Attended ロボットでのみ利用可能です。Unattended ロボットを使用して複数のプロセスを同時に実行すると、実行中のプロセスごとに個別のライセンスが消費されます。

Attended ロボットは、人間が操作するマシンと同じマシンで動作します。通常、ユーザー イベントによってトリガーされ、人間の監督下でのみ実行する必要があります。ロボットの自動化機能について詳しくは「ライセンスの種類別」をご覧ください。

バックグラウンド プロセスは、特定のユーザーのマシン上のロボットによって実行されます。プロセスは、同一の Windows セッションで同時に実行されます。

実行中の複数のプロセスが同じ依存関係の異なるバージョンを必要とする場合でも、実行中のプロセスはそれぞれ独自のバージョンの依存関係を使用します。たとえば、プロセス A が必要とする依存関係が v18.4.6 であり、プロセス B が必要とする依存関係が v19.4.4 である場合、プロセスごとに必要な依存関係のバージョンをダウンロードして使用します。

この種類のライセンスに従って、Attended ロボットは、1 つのフォアグラウンド プロセス (UI 操作によって) と複数のバックグラウンド プロセス (UI 操作なし) を同時に実行できます。

フォアグラウンド プロセスは、オートメーション プロジェクトが UI 要素を操作する必要がある場合に使用されます。これらのプロセスは、UI Automation アクティビティに大きく依存しています。一度に実行できるフォアグラウンド プロセスは 1 つだけです。

重要: UI Automation アクティビティを使用するオートメーション プロセスは、ロックされた画面では実行できません。

バックグラウンド プロセスは、画面上の UI 要素を操作する必要はありませんが、情報を渡すためにバックグラウンド プロセスに依存しています。UI Automation アクティビティは、これらの種類のプロジェクトでは使用できません。フォアグラウンド プロセスが既に実行されている場合でも、複数のバックグラウンド プロセスを 1 つのマシン上で同時に実行できます。

プロセスの種類は、通常、使用するアクティビティの種類によって決まります (UI 要素を操作するかどうか)。ただし、Studio から新しいプロセスを作成するときに種類を指定できます。デフォルトでは、特に指定しない限り、すべてのプロセスはフォアグラウンドとしてマークされます。

Attended ロボットと Unattended ロボットの動作

起動時、特定のユーザーに関連していないシステム プロセスを実行するために、Windows セッションが作成されます。このセッションを Session 0 と呼びます。このセッションによって、Windows ではマシン自体に必要なシステム プロセスを実行できるようになります。そのマシンにユーザーがログオンすると、User Session という名前の新しいセッションが作成されます。このセッションで、ユーザー固有のサービスが実行されます。

詳細については、Microsoft のセッション 0 の分離に関するドキュメント (英語) をご覧ください。そちらで、セッションがどのように作成され、各セッション間で情報がどのように処理されるかについての追加情報が提供されています。

バックグラウンド プロセスを使用することで、有人オートメーションと無人オートメーションでの実行時にプロセスがそれぞれ異なる動作をするようになります。Attended ロボットから開始されるバックグラウンド プロセスはユーザーのセッション (Session 1) で実行されます。これに対し、Unattended ロボットから開始されるバックグラウンド プロセスは Windows セッションで実行されます。

Attended ロボット

Attended ロボットによるバックグラウンド プロセス オートメーションは、マシン上のユーザーのセッションで実行されます。つまり、オートメーションは Studio または UiPath Assistant から開始され、ユーザーと同じ Windows セッションで実行されます。同じセッションでオートメーションが実行されるため、ロボットは情報を取得し、ユーザーに固有のファイルにアクセスすることができます。

Unattended ロボット

Unattended ロボットによるバックグラウンド プロセス オートメーションは、Robot サービスを介して開始され、Windows セッション (セッション 0) で実行されます。セッション 0 にはユーザー インターフェイスがないため、ユーザー セッションとの対話は不可能であることを知っておく必要があります。Unattended ロボットでこの種類のプロセスを使用するときは、そのプロセスがユーザーの名前で実行され、そのユーザーの権限を継承する点にご留意ください。プロセスの実行に使用されるユーザーが必要なリソースへのアクセス権を持っていること、そしてそのプロセスではいかなる種類のユーザー インターフェイスも必要ないことを確認してください。UiPath Robot による Windows セッションの作成・接続について詳しくは、「Windows セッション」をご覧ください。

注: Unattended ロボットによるバックグラウンド プロセス オートメーションを実行する際に、Word、Excel、PowerPoint などの Microsoft Office アプリケーションが正しく動作しないことがあります。これは、これらのアプリケーションがユーザー セッションで実行するように構築されており、対話型のデスクトップ セッションとユーザー プロファイルを必要とするからです。Office 365 製品がサーバー セッション (セッション 0) でどのように動作するかについて詳しくは、サーバーサイドのオートメーションに関する Microsoft のドキュメントをご覧ください。

バックグラウンド プロセスを実行する

[フォアグラウンドを使用] アクティビティを使用して、バックグラウンド プロセスフォアグラウンドに移行できます。このアクティビティの動作とオートメーション構築時の使用方法について詳しくは、こちらをご覧ください。

少なくとも 1 つのプロセスが実行されている限り、ロボットは Orchestrator でビジーとしてマークされます。

重要: v2021.10 のリリースより、サービス モードの Robot で無人バックグラウンド オートメーションを実行すると、既定で、Windows 組み込みのローカル サービス アカウント下で実行されるようになりました。以前は Orchestrator 内のロボットに設定されたユーザー名とパスワードが使用されていました。
Orchestrator で指定した資格情報を使用するには、ロボット端末上で UIPATH_HEADLESS_WITH_USER システム環境変数を設定し、値を True に設定する必要があります。この環境変数を有効化するにはマシンを再起動する必要があります。

ローカル サービス アカウントでのオートメーションの実行は Orchestrator で設定したログイン資格情報が不要なため、軽量です。これには以下の制限があります。

  • オートメーション ワークフローでは、アクセス権がローカル サービス アカウントの権限に制限されます。
  • Executor のプロキシ構成はサポートされていません。

既に実行中の別のフォアグラウンド プロセスを開始することはできません。一方、バックグラウンド プロセスは、他のプロセスのステートや種類に関係なく開始できます。

バックグラウンド プロセスで[プロセスを並列実行] アクティビティを使用すれば、必要なトリガーに基づいて他のプロセスを開始できます。このアクティビティにより開始されたプロセスは、独立して動作します。たとえば、特定のアクションを監視するバックグラウンド プロセスは、新しいプロセス (フォアグラウンドまたはバックグラウンド) を開始しつつ、特定のアクションの監視を中断されることなく継続できます。このアクティビティによって読み込まれたバックグラウンド プロセスは、フォアグラウンド プロセスおよび 1 つ以上のバックグラウンド プロセスが既に実行中であっても、ただちに開始されます。このアクティビティがフォアグラウンド プロセスを開始した場合、以下のいずれかの状況が発生します。

  • 他のフォアグラウンド プロセスが実行されていない場合は、プロセスがただちに開始されます。
  • フォアグラウンド プロセスが既に実行中の場合は例外がスローされます。

Was this page helpful?

サポートを受ける
RPA について学ぶ - オートメーション コース
UiPath コミュニティ フォーラム
UiPath ロゴ (白)
信頼とセキュリティ
© 2005-2024 UiPath. All rights reserved.