Tera Termマクロの終了コードを設定する方法

TeraTermマクロファイルをダブルクリックして使用する場合は、何かエラーがあった場合にmessageboxでエラーを通知して終了させるとエラー原因が判って良いでしょう。しかし、バッチファイルで大量のTeraTermマクロを処理したり、タスクで自動実行させる場合はmessageboxを使用すると処理が止まってしまいます。そんな時は、エラーが発生した際に終了コードを設定して、TeraTermマクロが正常終了したのか否か、エラー原因が何なのか通知するとより便利になります。

スポンサーリンク

終了コードの設定方法

TTLコマンドのsetexitcodeを使用すると、TeraTermマクロの終了コードを設定する事ができます。setexitcodeは次のように使用します。

setexitcode <終了コード>

TeraTermマクロで設定した終了コードを取得するためには、ttpmacro.exeを次のようにして実行します。

Windows NT/2000/XPの場合

ttpmacro test.ttl

Windows 98/MEの場合(/w オプションが必要)

start /w ttpmacro test.ttl

TeraTermマクロで設定した終了コードを取得するためには、変数errorlevelを参照します。エラーが発生した場合は終了コードを 1 、正常に終了した場合を0にするとした場合、次のように書くことができます。

エラーの原因まで判るようにする

単に正常終了したのか否かだけでは、後から見たら原因が判らず不便です。そこで、エラーが発生した原因ごとに終了コードを決めておくと良いでしょう。たとえば次のように書くのはどうでしょうか。

このTeraTermマクロを次のようにして実行します。 

ログファイルに実行したTeraTermマクロファイル名と終了コードを記録します。このようにすると、後でログファイルを見れば結果がひと目で判ります。もしもホスト名を引数にしてTeraTermマクロを実行しているのであれば、ホスト名をログファイルに記録した方が良いでしょう。この方法は大量のTeraTermマクロを一気に実行するとき、威力を発揮します。是非、活用してみてください。

スポンサーリンク