マクロで CUI アプリの利用No.03650
ひろ さん 03/03/27 19:14
 
 皆さん今日は、ひろです。
 秀丸のマクロにファイルのコピーや移動が無いなどの理由で、OS の標準で
付いているシェルの内部コマンドや、CUI アプリを使う手法が良く紹介されま
す。
 この方法の問題の一つは、コマンド・プロンプトが表示されてしまい、見栄
えが良くない点に有るかと思います。他の環境で上手くいくかどうか解りませ
んが、私の環境 (Windows98) では回避できる方法が見つかったので、ご紹介
しておきます。

 やり方は、
//--------------------------------------------------------------------
$s = basename;
openfile "/h";
run "command.com /c copy /Y \"" + $s + "\" \"" + $s + ".bak\" > con";
exit;
//--------------------------------------------------------------------
というように、openfile を h オプション付きで起動することにより、新規で
しかもステルスモードで起動し、そのウィンドウにリダイレクトしてやり、マ
クロ終了時にウィンドウは閉じてしまう方法です。これはシェルの内部コマン
ド以外でも同様のようで、
//--------------------------------------------------------------------
$name = basename;
openfile "/h";
$cmd = getenv("COMSPEC");
#handle = hidemaruhandle(0);
if( existfile( "MakeFile" ) )run $cmd + " /c make > con";
else run $cmd + " /c g++ \"" + $name +"\" > con";
setactivehidemaru #handle;
//--------------------------------------------------------------------
という使い方が出来ることも確認しました。(この場合は、出力したウィンド
ウは閉じない方が、Error, Warning 箇所からダイレクトタグジャンプが出来
て便利)

[ ]