title: Batch File 'Choice' syntax
body: <p>I have recently just worked on editing a script i saw to make it more dynamic and small.
  I seem to have found a problem which i can't figure out.
  For input it has a Choice script which allows only A-Z + 0-9, so i was wondering, What are the keys allowed to be entered, like is there a code for the key "ENTER" or "SHIFT" or "SPACE" or "BACKSPACE" because i need all of those so i can integrate them.</p>
  
  <pre><code>    @echo off
      color 05
      mode con cols=30 lines=8
      echo.
      echo Welcome.
      pause &gt;nul
      cls
    :startover
      set variable=
      set counter=-1
    :password
  **choice /c:abcdefghijklmnopqrstuvwxyz0123456789 /n /m "Type password please:%variable%"
      echo.**
      echo %ERRORLEVEL%
  
  call :variable
  
  if errorlevel 255 goto Error
  if errorlevel 36 set letter=%letter%9&amp;goto PWcheck
  if errorlevel 35 set letter=%letter%8&amp;goto PWcheck
  if errorlevel 34 set letter=%letter%7&amp;goto PWcheck
  if errorlevel 33 set letter=%letter%6&amp;goto PWcheck
  if errorlevel 32 set letter=%letter%5&amp;goto PWcheck
  if errorlevel 31 set letter=%letter%4&amp;goto PWcheck
  if errorlevel 30 set letter=%letter%3&amp;goto PWcheck
  if errorlevel 29 set letter=%letter%2&amp;goto PWcheck
  if errorlevel 28 set letter=%letter%1&amp;goto PWcheck
  if errorlevel 27 set letter=%letter%0&amp;goto PWcheck
  if errorlevel 26 set letter=%letter%z&amp;goto PWcheck
  if errorlevel 25 set letter=%letter%y&amp;goto PWcheck
  if errorlevel 24 set letter=%letter%x&amp;goto PWcheck
  if errorlevel 23 set letter=%letter%w&amp;goto PWcheck
  if errorlevel 22 set letter=%letter%v&amp;goto PWcheck
  if errorlevel 21 set letter=%letter%u&amp;goto PWcheck
  if errorlevel 20 set letter=%letter%t&amp;goto PWcheck
  if errorlevel 19 set letter=%letter%s&amp;goto PWcheck
  if errorlevel 18 set letter=%letter%r&amp;goto PWcheck
  if errorlevel 17 set letter=%letter%q&amp;goto PWcheck
  if errorlevel 16 set letter=%letter%p&amp;goto PWcheck
  if errorlevel 15 set letter=%letter%o&amp;goto PWcheck
  if errorlevel 14 set letter=%letter%n&amp;goto PWcheck
  if errorlevel 13 set letter=%letter%m&amp;goto PWcheck
  if errorlevel 12 set letter=%letter%l&amp;goto PWcheck
  if errorlevel 11 set letter=%letter%k&amp;goto PWcheck
  if errorlevel 10 set letter=%letter%j&amp;goto PWcheck
  if errorlevel 9 set letter=%letter%i&amp;goto PWcheck
  if errorlevel 8 set letter=%letter%h&amp;goto PWcheck
  if errorlevel 7 set letter=%letter%g&amp;goto PWcheck
  if errorlevel 6 set letter=%letter%f&amp;goto PWcheck
  if errorlevel 5 set letter=%letter%e&amp;goto PWcheck
  if errorlevel 4 set letter=%letter%d&amp;goto PWcheck
  if errorlevel 3 set letter=%letter%c&amp;goto PWcheck
  if errorlevel 2 set letter=%letter%b&amp;goto PWcheck
  if errorlevel 1 set letter=%letter%a&amp;goto PWcheck
  goto Error
  :pwcheck
  echo.
  echo Your letters are %letter%
  if %counter%==10 goto finish
  goto password
  :variable
  set /a counter=%counter%+1
  if %counter%==0 set variable=
  if %counter%==10 goto finish
  set variable=%variable%*
  goto :eof
  cls
  :finish
  echo Your password is %letter%
  pause&gt;nul
  cls
  choice /t 10 /c yn /d y /m "Start over "
  if errorlevel 2 cls&amp;echo CLOSING&amp;exit
  if errorlevel 1 goto startover
  :Error
    title Test v1.1 *** Error *** %time%
    echo Error: Critical Error.
    pause &gt;nul
  goto :eof
  exit
  </code></pre>
  
  <p>If you have any ideas or suggestions to make it work so that any length is allowed, please do tell. This seems to be the best idea.</p>