Código:
@ECHO OFF
:INICIO
CLS
ECHO ESCOJA EL PROGRAMA QUE DESEA EJECUTAR:
ECHO.
ECHO 1 - PROGRAMA1.EXE
ECHO.
ECHO 2 - PROGRAMA2.EXE
ECHO.
ECHO 3 - PROGRAMA3.EXE
ECHO.
ECHO 4 - PROGRAMA4.EXE
ECHO.
CHOICE /C:1234
IF ERRORLEVEL 4 GOTO CUARTO
IF ERRORLEVEL 3 GOTO TERCERO
IF ERRORLEVEL 2 GOTO SEGUNDO
IF ERRORLEVEL 1 GOTO PRIMERO
:PRIMERO
ECHO HA ELEGIDO LA OPCION 1; ¿DESEA CONTINUAR?
ECHO.
ECHO SI.
ECHO.
ECHO NO.
ECHO.
CHOICE /C:SN
IF ERRORLEVEL 2 GOTO FIN
IF ERRORLEVEL 1 START PROGRAMA1.EXE
GOTO OTRA
:SEGUNDO
ECHO HA ELEGIDO LA OPCION 2; ¿DESEA CONTINUAR?
ECHO.
ECHO SI.
ECHO.
ECHO NO.
ECHO.
CHOICE /C:SN
IF ERRORLEVEL 2 GOTO FIN
IF ERRORLEVEL 1 START PROGRAMA2.EXE
GOTO OTRA
:TERCERO
ECHO HA ELEGIDO LA OPCION 3; ¿DESEA CONTINUAR?
ECHO.
ECHO SI.
ECHO.
ECHO NO.
ECHO.
CHOICE /C:SN
IF ERRORLEVEL 2 GOTO FIN
IF ERRORLEVEL 1 START PROGRAMA3.EXE
GOTO OTRA
:CUARTO
ECHO HA ELEGIDO LA OPCION 4; ¿DESEA CONTINUAR?
ECHO.
ECHO SI.
ECHO.
ECHO NO.
ECHO.
CHOICE /C:SN
IF ERRORLEVEL 2 GOTO FIN
IF ERRORLEVEL 1 START PROGRAMA4.EXE
GOTO OTRA
:OTRA
ECHO.
ECHO ¿DESEA REALIZAR ALGUNA OTRA OPERACION?
ECHO.
ECHO SI.
ECHO.
ECHO NO.
ECHO.
CHOICE /C:SN
IF ERRORLEVEL 2 GOTO FIN
IF ERRORLEVEL 1 GOTO INICIO
:FIN
ECHO.
ECHO "HASTA PRONTO"
ECHO.
Lo acabo de probar y funciona a la perfección
OBSERVACIONES:
1 - El .BAT se tiene que encontrar en la misma carpeta que los programas a ejecutar, o si no deberás escribir su ruta completa
(Por ejemplo, en vez de esto:)
Código:
START PROGRAMA3.EXE
si el programa se encuentra en C:\caca\hola, tendrás que escribir:
Código:
START C:\caca\hola\PROGRAMA3.EXE
y así con todos
2 - Necesitas el comando CHOICE, si estás en windows XP o NT, puedes conseguir dicho comando aquí:
http://foro.elhacker.net/index.php/topic,78383.0.html
3 - El código es bastante más largo que el de jvchino porque hace las comprobaciones con todos los programas.
4 - Puedes añadirle todos los programas que te plazcan siguiendo el mismo formato del programa.bat
5 - Espero que te sirva y lo disfrutes xD
PAZ