CHOICEコマンドが無い 〜〜


 CHOICEコマンドはバッチファイル実行中、キーボード入力により処理順序等を変えられる便利なコマンドですが、MS−DOSのバージョンによってはCHOICEコマンドが無いようです。BASICやC言語などの高級言語で実行形式(.COM、.EXE)が作成できるコンパイラがあればCHOICEコマンドを作成できます。
 CHOICEコマンド(エラーレベルを設定するプログラム)を作ってみましょう。
 

例)C言語で作成

main()
{
	char c;
	printf("[Y/N]:");
	c=getch();
	printf("\n");
	if(c=='Y') exit(1);
	if(c=='N') exit(2);
	exit(0);
}
実行結果:Y入力でエラーレベル1、N入力でエラーレベル2、それ以外の文字でエラーレベル0を設定。

 コンパイラが無い場合は多少作成に注意が必要(作成ミスはプログラムが暴走しリセット必要等の障害あり)ですが、DEBUGコマンドでも作成が可能です。

例)DEBUGで作成(その1)

dos-choice.gif (9859 バイト)

実行方法:choiceyn.com

実行結果:Y、y入力でエラーレベル1、N、n入力でエラーレベル2を設定。それ以外の入力は再度入力待ち。

例)DEBUGで作成(その2)

dos-choices.gif (10112 バイト)

実行方法:choices.com

実行結果:入力文字のアスキーコードをそのままエラーレベルに設定。


<Back>