|
> 実際には末尾のような方法でどうでしょうか? 要は、おそらく環境変数で
>指定してあると思うので、コマンドプロンプトで set コマンドを使って、適
>当な環境変数が何であるか調べ、それをマクロの getenv で取得すれば良い
>と思います。
ませまです.
いつもどうもです.
教えてもらったコードで我が家の W2k, W98 ともに正常に動作しました.
COMSPEC は NT 系も大丈夫らしいです.
コードもスッキリしたし,環境依存の問題も大丈夫そうです(たぶん)
ちなみに,我が家のマシンになぜか2つもあった command.com は
set | find /i "comspec"
として検索したら c:\command.com の方がヒットしました.
よくわからないけど,こっちが本物(?)らしいです.
とりあえず,下のコードで公開し,ユーザの反応を参考に例外対策をして
いこうと思います.
// ---( B E G I N M A C R O ) ------------------------------------
// コマンドプロンプト起動マクロ - 0.01 by Masema
// Windows95/98/Me のときは command.com
// WindowsNT/2K/XP のときは cmd.exe
Init:
// 環境変数 COMSPEC を調べて cmd.exe か command.com かを判断
$shell = getenv( "SHELL" ); //ユーザが独自に設定しているかも
if( $shell == "" ) $shell = getenv( "COMSPEC" );
// 起動オプションを設定
$option = "/k cd \"" + directory + "\"";
Main:
run $shell + " " + $cmd_opt;
if( result == false ) call Error;
endmacro;
Error:
message "コマンドプロンプトの起動に失敗しました.\n"
+ "がっかりです.\n"
+ "最新版の秀丸なら大丈夫かもわかりません.\n";
return;
// ---( E N D M A C R O ) ----------------------------------------
|
|