コマンドプロンプトの実行待機状態の取得方法について

質問
uipathを起動してExcelに予め設定しておいた実行コマンドを読み取ってその後、
コマンドプロンプトを開いて
Excelから読み取ったコマンドを貼り付けて実行
ここからが本題なのですが、
コマンドを実行した後、再度コマンドを入力状態になっている事を検知する方法などはありますでしょうか?

例:
cmd上↓
c:\users\ユーザー名>実行コマンド


c:\users\ユーザー名>|

コマンド実行後の入力待機状態の検知

以上です。
よろしくお願いします。

こんにちは

コマンドプロンプトを使わねばならい理由は何かありますでしょうか?
なければUiPath側から各コマンドを同期的に逐次実行してけば良いかと思います。

単純なケースはプロセスを開始アクティビティを、高度なケースはProcessクラスやProcessStartInfoクラスを使うと良いかと思います。

1 Like

Yoich様
ご回答ありがとうございます。
すみません確かに何故使用するのか明記しておりませんでした。
コマンドプロンプトを使用する理由と致しましては、
使用するツールが規約上uipathによるマウス操作、入力動作が規約違反に当たるため
コマンドプロンプトによるコマンドでの実行に処理を変更した経緯にあります。
使用するコマンドの詳細については
正確に共有出来ないのですが、
イメージとしましては、
対象のツールへのログイン、使用するサーバーの指定、ツールで実行するファイルパス(単体or複数)
上記の内容を組み合わせたコマンドを外出しの設定ファイルに予め設定して
ロボットでそのファイルを読み取りコマンドプロンプトを動かす様な仕組みになっております。
現状コマンドを実行するところまでは作成出来たのですが、
コマンド実行後、そのコマンドが終了したかどうかをロボット側で検知する方法が分からなかった為今回質問をさせて頂きました。

使用するコマンドは単体から複数のパターンが想定されるのと、ツールで実行するファイルは実行時間にムラがある為、ロボット側でコマンドプロンプトの状態を取得する方法があればループ処理を利用して検知出来ると思っております。

上記の事を踏まえてもやはりコマンドプロンプトの状態の検知は難しいでしょうか?

色々情報が不足しており申し訳ございません。
よろしくお願い致します。

こんにちは

単にOS 上でプログラムを実行するだけなら、必ずしもコマンドプロンプトを使う必要は無いと思います。
上記でも記載した方法、あるいは単にバッチファイルにしても同期的に逐次実現可能のように思えます。
こちら何か問題ありそうでしょうか?

1 Like

にあるような感じでbatコマンド終了後にポップアップメッセージを出現させるようにしておき、Uipath側ではポップアップを待機するようにすれば比較的簡単に実現できると思います。