ちょっとしたスクリプトにおいて、WScript.Echoなどで結果をstdoutにずらずら出力したいときがある。
で、このスクリプトをエクスプローラからダブルクリックで実行してしまいMsgBoxが延々と出てきてしまうと悲しい。ので、実行時にチェックしてコマンドプロンプト(cscript.exe)から実行されたかどうか判断したい。

改めて検索してみたら、
@IT:運用 Windows管理者のためのWindows Script Host入門 第4回 WScriptオブジェクトの詳細(2) 4.スクリプトの実行制御とホスト情報の取得
実行ファイル名でチェックしてるサンプルが。

今までこんなん↓してた(JScript)

try {
WScript.StdErr.WriteBlankLines(1);
} catch( ex ) {
WScript.echo( "run me under cscript.exe");
WScript.Quit();
}
うーん。
cscript.exe経由で実行の場合に、StdErrが汚れるし。。


       
Powered by Google App Engine

このブログ記事について

このページは、tckzが2008年5月15日 23:55に書いたブログ記事です。

ひとつ前のブログ記事は「CF 8GBな X40に Vista SP1統合セットアップ」です。

次のブログ記事は「VBAで Outlookの予定表フォルダを取得する」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

Powered by Movable Type 5.04