SecondChoice.exe, Version 1.02 Alternative to Windows' native CHOICE command. Like CHOICE, SecondChoice allows users to select one item from a list of choices and returns the index of the selected choice. Unlike CHOICE, SecondChoice also returns the default value on pressing the Enter key (besides after timeout expiration). And unlike CHOICE, SecondChoice accepts a space in the list of choices if that list is in doublequotes. Usage: SECONDCHOICE [ options ] Options: /C choices Specifies the list of Choices to be created. Default list is "YN". /CS Enables Case-Sensitive choices to be selected. By default, the utility is case-insensitive. /D default Specifies the Default choice after the timeout expires or after pressing Enter. The default character must be in the list of choices specified by /C option. /M message Specifies the Message to be displayed before the prompt. If not specified, the utility displays only a prompt. /N Hides the list of choices in the prompt. The message before the prompt is displayed and the choices are still enabled. /T timeout The number of seconds to pause before a default choice is made. Acceptable values are from 0 to 86400 (24 hours). If 0 is specified, there will be no pause and the default choice is selected. Notes: The ERRORLEVEL environment variable is set to the index of the key that was selected from the set of choices. The first choice listed returns a value of 1, the second a value of 2, and so on. Invalid choices are ignored. If SecondChoice detects an error, it returns ERRORLEVEL 255, if the user presses ESC, CTRL+C or CTRL+BREAK, the ERRORLEVEL will be 0. Pressing CTRL+BREAK will also be passed on to the hosting process. Besides spaces between switches and values, colons or equal signs are accepted too, e.g. /C choices or /C:choices or /C=choices are all accepted. SecondChoice also accepts a space as a valid choice; make sure you place the list of choices in doublequotes if you want to use a space in the list of choices, e.g. /C " ABC" or /C:" ABC" or /C=" ABC". Examples: SECONDCHOICE /C YNC /M "Press Y for Yes, N for No or C for Cancel." SECONDCHOICE /T=10 /C=YNC /D=C /M="Y=yes, N=no, C or timeout=cancel" SECONDCHOICE /C YN /N /D Y /M "Press Enter or Y for Yes, or N for No" SECONDCHOICE /C:AB /M:"Select A for option 1 and B for option 2." SECONDCHOICE /C 12 /N /M "Select 1 for option 1 and 2 for option 2." Credits: Code to gracefully exit on Ctrl+Break by Alois Kraus http://codeproject.com/Articles/16164/Managed-Application-Shutdown Written by Rob van der Woude http://www.robvanderwoude.com