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)

実行方法:choiceyn.com
実行結果:Y、y入力でエラーレベル1、N、n入力でエラーレベル2を設定。それ以外の入力は再度入力待ち。
例)DEBUGで作成(その2)

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