2007年11月17日
アプリ連続実行
処理終了を待って次のアプリケーションを連続実行
連続アプリ実行 Ver0.30 2007/11/17 ダウンロード
関連のあるアプリケーションを連続的に実行したい場合があります。
アプリケーション(以後アプリと省略)の処理結果を次のアプリが利用する場合、前の処理の終了を待つ必要があります。
アプリが処理が終わった後、自分でプログラムを終了してくれる場合は簡単です。単にバッチコマンドや簡単なスクリプトを作成するだけで済みますが、ほとんどは処理終了後も「終わったよ」と表示するだけで、そのまま居座り続けます。
本ツールは、アプリケーションを起動するとともに、そのアプリを監視し、その終了を待って次のアプリを起動します。
終了判定方法
1.制限時間
処理に要する時間より大きいと思われる制限時間を設定しておき、
時間になったら次のアプリを起動
2.出力メッセージ
アプリが処理終了後に出力する「完了しました」などのメッセージを監視し、
検知したら次のアプリを起動
3.CPU使用率
通常、処理が完了するそのアプリ(≒プロセス)のCPU使用率は0に近くなる。
CPU平均使用率の下限値により、その値を下回った時に処理終了とみなして次のアプリを起動
本ツールの適用範囲
下記のいずれかの条件を満たすアプリケーションの場合有効
・処理終了後にメッセージを表示するアプリ → 監視機能で終了
・処理終了後にCPU負荷が急激に下がるアプリ → CPU使用率で終了
・処理終了までの最大時間が予測できるアプリ → タイムアウトで終了
下記の場合は使用不可
・終了メッセージを表示せず、終了後もCPU負荷が高いアプリ(Wmp10版以降のような)
・終了メッセージを表示せず、CPU使用率が0に近いアプリ(検知不能)
起動イメージ
下図は、5つのアプリケーションを連続実行する例
アプリ概要 制限時間 CPU下限 監視文言 タイムアウト時の処理 ① 音楽演奏 20分 0.1% 終了して次 ② ダミー動作 20分 30% 終了して次 ③ ダミータイムアウト 20分 ちょうど、時間となりました 終了して次 ④ ダミー:終了に応じないアプリ 20分 0.1% 終了して次 ⑤ 音楽演奏 1分 2.0% 終了して次
①:CPU20秒平均(使用率)が0.1%未満になった時に終了して次の②が起動される ②:ダミー動作。CPU使用率が非常に高い。動作終了時(15秒後)にCPU使用率が0になり終了して③が起動される ③ダミー(カウントダウン)アプリへ渡すパラメータ(-t 0.25 : 時間0.25分)により15秒後に「時間となりました」の文言を表示する。その文言を検知して次の④が起動される。このダミープログラムは負荷がとても小さいのでCPU使用率では検知できない。 ④:起動後、動作が無いので終了させられるが終了に応じない。10秒後に強制終了されて次の⑤が起動される。 ④音楽演奏:拡張子「MP3」の応じたメディアプレーヤーが起動されて演奏を開始。演奏終了後にCPU使用率が2.0%以下になるようなアプリは終了。その後もゴソゴソ動いているような(ウィンドウズメディアプレーヤー10版以降)アプリはタイムアウトで終了させられる。
動作条件
Windows2000Pro , WindowsXP Home にて確認 Vistaは未検証(だぶん動作しない)