Me gusta ejecutar dos programas usando archivos por lotes, pero la condición es que el segundo programa debe iniciarse solo después de que se cargó el primer programa, ¿hay alguna manera de controlar usar el temporizador para controlar cuándo? el programa comienza.Cómo ejecutar múltiples programas usando el archivo por lotes
Respuesta
Básicamente, usted podría intentar este enfoque (no probado):
Ejecutar el primer programa con el comando
start
.Compruebe la lista de tareas en un bucle para ver si el programa apareció allí.
Imponen alguna limitación de tiempo para dicho bucle.
Ejecute el siguiente programa en caso de éxito, salga con la notificación de lo contrario.
El script podría tener este aspecto:
@ECHO OFF
START program1.exe
FOR /L %%i IN (1,1,100) DO (
(TASKLIST | FIND /I "program.exe") && GOTO :startnext
:: you might add here some delaying
)
ECHO Timeout waiting for program1.exe to start
GOTO :EOF
:startnext
program2.exe
:: or START program2.exe
Tenga en cuenta que el tiempo no es precisa, especialmente si se va a insertar los retrasos entre las comprobaciones de la lista de tareas.
Wow, gracias por la sugerencia .. stackoverflow es realmente bueno! – srisar
tengo también encontrará un pequeño truco para hacerlo, simplemente utilizando un comando ping con la opción -n de la siguiente manera:
start /d "C:\Program Files (x86)\Mobile Partner\" MobilePartner.exe
ping 127.0.0.1 -n 8
start /d "F:\Other Applcations\System Tools\OS Tweak\" dragfullwindows.exe
Creo que esto podría ser irrelevante aquí, pero le gustaría compartir la siguiente:
He creado el siguiente archivo por lotes y lo ejecuto cada vez que abro mi computadora portátil en la oficina para abrir programas relevantes con un solo clic. Mantuve este archivo en el escritorio y creé una carpeta donde pongo todos los accesos directos para programas relevantes. Por lo tanto, ejecutar estos accesos directos en el archivo por lotes de la siguiente manera:
@ECHO off
start C:\Users\User1\Desktop\Softwares\IE
start C:\Users\User1\Desktop\Softwares\Googletalk
start C:\Users\User1\Desktop\Softwares\YahooMessenger
start C:\Users\User1\Desktop\Softwares\Program4
start C:\Users\User1\Desktop\Softwares\Program5
que necesita la misma cosa, y descubrió que lo siguiente funciona como se esperaba:
start D:\Michal\Xming\Xming.exe -multiwindow
start D:\Michal\Xming\putty.exe
start D:\Michal\WinSCP\WinSCP.exe
Y todo se guarda en archivo Login.bat.
BTW, estoy ejecutando Win7 pero dudo que esto tenga algún impacto.
- 1. ¿Cómo ejecutar programas en el mismo directorio que el archivo por lotes de Windows?
- 2. Ejecutar archivo por lotes en el fondo
- 3. Ejecutar .jar desde archivo por lotes
- 4. ¿Cuánto demora ejecutar un archivo por lotes?
- 5. ¿Ejecutar archivo por lotes en vb.net?
- 6. Ejecutar archivo por lotes desde Delphi IDE
- 7. ejecutar un archivo por lotes desde C#
- 8. ¿Cómo ejecutar un archivo por lotes desde Java?
- 9. Incluir un archivo por lotes en un archivo por lotes
- 10. Ejecutar archivo por lotes tras otro archivo por lotes se completa
- 11. Ejecutar archivo por lotes en el instalador NSIS
- 12. Cómo construir una solución usando el archivo por lotes
- 13. Error al ejecutar el archivo por lotes Mysql
- 14. Cómo ejecutar un script por lotes (archivo .bat) desde eclipse
- 15. Ejecutando vbscript desde el archivo por lotes
- 16. Ejecutar archivo por lotes después de cada compilación en eclipse
- 17. Usando python para ejecutar otros programas
- 18. ¿Cómo implemento quicksort usando un archivo por lotes?
- 19. abrir múltiples documentos PDF utilizando archivo por lotes
- 20. Ejecutar archivo por lotes desde C# Número de permiso
- 21. Codificación de archivo por lotes
- 22. Ejecutar un archivo por lotes en un directorio determinado usando VBA
- 23. ¿Cómo cambiar el directorio y luego ejecutar el archivo por lotes?
- 24. Cerrar un archivo por lotes después de ejecutar el archivo jar
- 25. ¿Comando inactivo en archivo por lotes?
- 26. enviando correo desde el archivo por lotes
- 27. Ejecutando rake desde el archivo por lotes
- 28. Cómo ejecutar múltiples beanstalk worker usando php
- 29. Ejecutar atajos como programas
- 30. Cómo esperar a que finalice un proceso para ejecutar otro proceso en el archivo por lotes
No puede hacer esto en un archivo por lotes como bloques de archivos por lotes hasta que finalice el comando actual. Te sugiero que escribas una aplicación de envoltura que inicie ambos programas. – Rasika
Rasika: Eso está mal. – Joey
@Joey: Es correcto, pero un poco corto :-) Puedes usar 'start' o pipes o si el programa es un exe de Windows simplemente funciona. – jeb