移動プロファイル環境でのプロセス実行時エラーの回避方法

team-work-robot-people

概要 

移動プロファイル環境でロボットを使用する上での設定・注意事項について説明します。以下3条件に該当した場合、プロセス実行時に An error appeared while executing というエラーが発生します。

  • ログインに使用するWindowsユーザのプロファイルの種類が 移動 である。

  • 移動プロファイルを使用した同一 Windows ユーザが異なる端末へログインし、2回目以降 プロセス実行を行っている。

  • UiPath Robotのバージョンが 2018.2以降 である。

エラーダイアログの詳細は次の通りです:

An error appeared while executing <プロセス名> Error messge: ファイル ’%USERPROFILE%\.nuget\Packages\<プロセス名>\<バージョン>\lib\net45\Main.xaml’が見つかりませんでした

UiPath Robot Tray

原因

初回Windowsログインでのプロセス実行時には %USERPROFILE%\.nuget\Packages 配下にXAMLファイルが展開されますが、セキュリティ強化の仕様上、ユーザ権限ではXAMLファイルのコピーが行えません。

このためWindowsログアウト時にローカルからファイルサーバへの移動プロファイル同期の際にXAMLファイルのみコピーに失敗します。

この状態で別端末へWindowsログインした場合、XAMLファイルが欠落した状態でファイルサーバからローカルへの移動プロファイルの同期が行われるため、2回目以降 UiPath Robotからプロセスを起動する際にXAMLファイルが見つからずエラーが発生します。

再現方法

  • 移動プロファイルを使用しているWindowsユーザでプロセス実行端末へログインします。

  • タスクトレイ上のUiPath Robotから、Updateボタンを押下し、プロセスの更新を行います。

(例)プロセス更新前

UiPath Robot

(例)プロセス更新後

UiPath Robot
  • 上記端末からログアウトします。

  • 別のプロセス実行端末に同一ユーザでログインし、タスクトレイのUiPath Robotからプロセスを実行します。

(例)プロセスの実行

UiPath Robot

回避方法

下記の1または2いずれかの手順を実行した上でプロセス更新を行うことにより、プロセス実行が正常に行われます。

1.グループポリシー設定

1-1:ADサーバー上で グループポリシーの管理 を起動します。

1-2:Windowsログインに利用するユーザアカウント対して、 %USERPROFILE%\.nuget を同期フォルダから除外を 行うグループポリシー設定を行います。

1-3:[ユーザーの構成] - [ポリシー] - [管理用テンプレート] - [システム] - [ユーザープロファイル] - [特定のディレクトリを移動プロファイルから除外する]を選択します。

1-4:「特定のディレクトリを移動プロファイルから除外する」ポリシーに .nuget を設定し、有効化します。

(例)除外ポリシー設定表示

UiPath Robot

1-5:グループポリシーオブジェクトを移動プロファイルを使用しているユーザーに適用します。

2.XAMLセキュリティ無効化

2-1: UiPath Studio v2019.4以降をお使いの場合には、次の手順により、XAMLファイルのセキュリティ機能を無効化することができます。この手順を実施しますと、NuGetパッケージから解凍されたXAMLファイルをユーザー権限で閲覧、編集することが可能になるため、セキュリティレベルが低下することに留意してください。

2-2: Studioインストール時に次のコマンドラインオプションを使用して実行します。(参照: https://docs.uipath.com/studio/lang-ja/docs/msi-command-line-parameters)

msiexec /i UiPathStudio.msi DISABLE_SECURE_XAML=1

2-3:設定ファイル  C:\Program Files (x86)\UiPath\Studio\uipath.config に次の設定が追加されていることを確認します。

<configuration> <packageSettings> <add key="disableSecureXaml" value="true" /> </packageSettings> </configuration>

3-1:各端末にログインした際にタスクトレイのUiPath Robotからプロセスの更新を行います。

3-2:端末+ユーザ単位で %USERPROFILE%\.nuget\Packages フォルダ内にキャッシュされるため、プロセス更新は初回のみ行います。

3-3:プロセスのバージョンアップ時には、適宜プロセス更新を実施して下さい。

Get articles from automation experts in your inbox

Subscribe
Get articles from automation experts in your inbox

Sign up today and we'll email you the newest articles every week.

Thank you for subscribing!

Thank you for subscribing! Each week, we'll send the best automation blog posts straight to your inbox.