Bueno me pasa lo siguiente, en mi uni hay unos centros de cómputo que tienen esos famosos controles de ciber (obviamente hecho por los mismos de la uni) El caso es que hice un mataprocesos en batch para detener el ciber control con solo ejecutarlo. Peeero no me funciona... dejen les explico como funciona el ciber control en cuestión: Para el ciber control se ejecutan dos .exe que les llamaremos \"A\" y \"B\". Entonces al iniciar la pc se ejecuta ambos programas. El programa \"B\" depende del programa \"A\", si \"B\" se detiene, entonces \"A\" manda un horroso mensaje de que \"B\" no se está ejecutando y se reinicia la pc. Entonces a webo se debe primero de matar \"A\" y luego a \"B\". hasta aquí no hay problema...
Entonces programé mi batch de la siguiente manera:
@echo off
taskkill /F /IM a.exe /IM b.exe
exit
Y lo voy ejecutando.. y oh!!! que mala sorpresa!! me aparece el horroso letrero que tira \"A\" cuando \"B\" no se está ejecutando y se reinicia la pc!... ¿Pero cómo? si se supone que maté a los dos. entonces decidí escribir:
@echo off
taskkill /F /IM a.exe
taskkill /F /IM b.exe
exit
shit.. nada.... entonces decidí abrir el cmd y escribí \"tasklist\" para que me aparecieran el PID a ver si así se mataban, y anoté esto:
@echo off
taskkill /F /PID 1234
taskkill /F /PID 5678
exit
Excelente!! se mataron los procesos con éxito, y ni pío hicieron. Pero luego me percaté de un problema, que las PID\'s son variables en cada ejecución. Entonces aquí mi viene mi capricho y al igual mi duda.... ¿Qué tengo que escribir en el batch para que mate el proceso de tal forma que obtenga los PID\'s y automáticamente tome esos números como variables para que los mate? claro todo esto debe de ser hecha en una sola ejecución. ¿Se puede hacer esto en batch? ¿O tienen otra alternativa con algún compilador?. Disculpen que me complique tanto explicando, es para que capten mejor mi duda, espero no haberlos enredado...