WinAutopilot 説明書 [処理ログの読み方]

WinAutopilot 説明書 》 処理ログの読み方

処理ログを見るには、タスクトレイアイコントレイアイコンを右クリックし「処理ログを見る」を選択します。
処理ログは直近に処理したマクロ処理のログのみ保管しています。

ログファイルはユーザープロファイルフォルダの下記場所にあります。

…<UserProfileフォルダ>\AppData\Roaming\JJWorkshop\WinAutopilot\WinAutopilot_Log.txt

わかりやすい形でログを保存しているので見ればだいたい分かると思いますが、略号や付加情報について少し説明を加えておきます。

ログの構成

[11/04/07 23:24:01] ..\ComboboxSelectText.txt マクロ処理開始
[11/04/07 23:24:01] OS情報 Ver=6 : MinVer=0
[11/04/07 23:24:01] Info : ForeGroundLockTimeOut=0 mm sec
 ・
 ・ (各マクロの処理結果)
 ・
[11/04/07 23:24:11] マクロ処理終了

処理ログは上記のような構成になっています。
1行目が実行したTFマクロのファイルパスです。
「OS情報」は処理したOSのバージョンを番号で表示します。(XP=5,Vista=6,Windows7=7等)
Info : ForeGroundLockTimeOut値は重要で、ここが「0 mm sec」でないとフォーカス処理が正しく処理されません。この値の意味についてはこちらを参照して下さい。
「xxxx行目:xxx」の行はすべてマクロの処理結果になります。
「xxxx行目」はマクロソースの行番号に対応します。

各マクロの処理結果

プログラム起動マクロ

例:
LAUNCH: >notepad< 完了=起動待ち -OK

「>notepad<」の部分は起動したプログラムです。
上記例は「メモ帳」なので「notepad」と省略して起動してますが、通常のプログラムの場合はフルパスになります。

「起動待ち」の部分は指定により「待たない」「終了待ち」になります。

「-OK」は、起動したプログラムが「起動待ち」の場合、インプット待ちになったことを表します。
これはTFマクロエンジンプロパティの「連続でキー入力での待ち時間」間隔で10回チェックします。
チェックに失敗した回数分「*」をログに付加します。その回数内で入力待ちにならないとエラーとなりマクロは終了します。(例はエラー無し)

ウィンドウフォーカスマクロ

例:
FOCUS : >ページ設定< [完全一致] Check=1 -OK

「>ページ設定<」の部分はフォーカスウィンドウを探したキャプション指定です。

「完全一致」の部分は指定により「部分一致」(キャプションの最後に「*」)になります。

「Check=1」はTFマクロエンジンプロパティの「ウィンドウのチェックリトライ回数・間隔」でチェックした回数を表示しています。
この回数以内でフォーカスできなければエラーとなりマクロは終了します。

「-OK」は「プログラム起動マクロ」の説明と同じです。これは上記のチェックがOKだった場合さらにチェックしています。

ウェイトマクロ

例1:
WAIT : 2000 mm sec

これはシンプルなウェイトです。

例2:
WAIT : 4000 mm sec [3 max loop] -OK[wh=007204E8]

これは「FGのアプリケーションがアイドルになるまで繰り返す最大回数」に1以上を指定した場合のログです。
「[3 max loop]」は指定した最大回数です。

「-OK」は、指定した最大回数内でターゲットアプリケーションがアイドルになったことを表します。
チェックに失敗した回数分「*」をログに付加します。その回数内でアイドルにならないとエラーとなりマクロは終了します。(例はエラー無し)

[wh=007204E8]は、ターゲットウィンドウのウィンドウハンドルを示しています。この値が「00000000」だとフォアグラウンドのアプリが見つけられなかったことになります。

キー入力マクロ

例:
KEYIN : CONTROL(11) + "A"(41)

「""」リテラルで囲ったキー文字は直接キーです。
それ以外はバーチャルキーとなります。

それぞれのキーの後ろにある「()」内の数字は、そのキーの16進キーコード値となります。

文字入力マクロ

例:
TYPE : [Fgwh=007204E8][wh=00300D32]>Autopilot<

[Fgwh=007204E8]は、ターゲットとなったアプリケーションのウィンドウのハンドルです。
[wh=00300D32]は、実際に文字列を送ったフィールド等のウィンドウハンドルです。
これらのハンドル値が「00000000」だと出力先を見つけられなかったことになります。

「>Autopilot<」の部分は出力(直接値、引数値、クリップボード値)した文字列です。

この処理は、文字列をターゲットへ送るのにクリップボードを利用しています。
クリップボードが他でビジーだと処理に失敗する可能性があります。
失敗時のリトライ回数は、TFマクロエンジンプロパティの「OpenClipboard失敗時のリトライ回数」で指定した回数となります。

マウス操作マクロ

例1:
MOUSE : X=743 Y=614 BUTTON=DD POS=SCREEN

これはスクリーン座標の例です。(「POS=SCREEN」) 「X,Y」はマウスのスクリーン座標になります。
「BUTTON=」はマウスデバイスのアクションです。「DD」はダブルクリックでそのほかのアクションはこちらを参照下さい。

例2:
MOUSE : X=725 Y=530 BUTTON=none POS=LOCAL(wh=002E0E60 X=328,Y=286)

これはローカル座標の例です。(「POS=LOCAL」) 「X,Y」はマウスのスクリーン座標になります。
「LOCAL」後ろの「(wh=002E0E60 X=328,Y=286)」は、「wh=002E0E60」がターゲットとなったウィンドウハンドル(このマクロ処理時点でフォーカスのあるウィンドウ)で、その次の「X=328,Y=286」はマウスのローカル座標になります。