MCからの「Execute Command Line(コマンド ライン実行)」ステップの実行でエラーとなる場合の確認事項

フォローする

1)エラー内容
DSでは実行可能だが、MCで実行すると「Execute Command Line(コマンド ライン実行)」ステップが下記エラーメッセージにより実行されない。
「Error from the Execute Command Line action. Execution of sub-process not allowed, cannot run cmd.exe.
To allow sub-process execution, check the “Allow File System and Command Line Access”
property in the RoboServer Settings application.」

・エラー原因
対象ファイルへの権限不足等の原因が考えられます。

≪注意事項≫
「Execute Command Line(コマンド ライン実行)」ステップはコマンドプロンプトで実行することと同義です。
Excelのマクロを実行する場合、VBScriptより呼び出し部分をKapowで処理しているだけで、
実際のマクロの実行自体はExcel等マクロが含まれるプログラムで実行されますので、ロボットを実行している環境に
Excelがインストールされている必要があります。

・解決方法
1.【RoboServer Settings(RoboServer設定)】より、ファイルシステム・コマンドラインアクセスが許可されている必要があります。
【RoboServer Settings(RoboServer設定)】より、[Security(セキュリティ)]タブ内の「Allow File System and Command Line Access(ファイルシステムとコマンドラインのアクセスを許可)」に
チェックが入っていることを確認してください。

2.RoboServerをWindowsサービスで起動している場合、ロボットの実行者も
Windowsサービスとなるため、RoboServerでExcelを開くことができない
可能性があります。
※Windowsサービスを使用せずにRoboServerを起動している場合は、
関係ありません。

上記の場合、以下の仮想デスクトップフォルダを作成する対応が必要となります。
C:\Windows\System32\config\systemprofile\Desktop
C:\Windows\SysWOW64\config\systemprofile\Desktop
※サービスの実行ユーザーでログインして、RoboServer.exeの設定を変更する必要あり。(Allow File System and Command Line Accessにチェック )

詳しくは下記Microsoftページをご参照ください。
Microsoftコミュニティ「Windowsサービス上でExcelファイルが開けない

上記Microsoftページによると、WindowsサービスがExcelファイルを開くことは、
「推奨していない動作」とのことですが、仮想デスクトップの作成を
行うことで、Excelファイルを開くことができるようになる可能性があります。

参考ナレッジ:Windowsのサービスに登録したRSでExcelマクロを実行させる設定

3.「Execute Command Line(コマンド ライン実行)」ステップで指定しているコマンドを実行するのに
十分な権限があるか確認してください。
(例)ファイル操作を行うコマンドを指定している場合は、そのファイルに対して、
操作を行うために必要な権限があることを確認してください。

 

2)エラー内容
RoboServerをWindowsサービスで起動し、MCから実行すると「Execute Command Line(コマンド ライン実行)」ステップから先にロボットが進まない。手動でロボットを停止すると下記エラーメッセージになる。
「 Error from the Execute Command Line(コマンド ライン実行) action. null 」

・エラー原因
Execute Command Lineからネットワーク上のファイル操作を使用しようとしている場合、インターネットオプションのセキュリティ制限で引っかかることがあります。

通常セキュリティ制限に引っかかった場合、「このファイルの作成者を確認できません。このファイルを開きますか。」とメッセージダイアログが表示されますが、RoboServerをWindowsサービスで起動している場合、このメッセージダイアログが表示されないため、エラー原因に気づかないことがあります。
※RoboServer端末上のDSやRoboServerをサービス起動していないと、メッセージダイアログは表示されます

・解決方法
下記の対応はセキュリティの設定変更となりますので、ご注意ください。
特定のサーバ利用時にメッセージダイアログが表示されないよう変更します。インターネットのプロパティ > セキュリティタブ >ローカルインターネット を開き、
「このWebサイトをゾーンに追加する」に、ネットワーク上のサーバ名を「file://サーバ名」の形式で登録します。