PDA

View Full Version : [Batch] Fare partire un comando al termine di un determinato processo


Ortolino
22-09-2010, 14:55
Salve, spero sia questa la sezione giusta e che comprendiate quanto sono inesperto in questo campo :D
Ho già fatto un piccolo file batch per farmi risparmiare tempo e automatizzare alcune cose.
La mia domanda è: posso fare automaticamente partire un comando in un file .bat alla chiusura di un determinato processo?
oppure: posso fare partire un file .bat in automatico alla chiusura di un determinato processo?

zuper
22-09-2010, 17:36
di base in un file batch ogni comando parte dopo la conclusione del precedente


notepad
calc


queste 2 righe in un batch fanno partire il notepad e una volta chiuso fanno partire la calcolatrice :)

Ortolino
22-09-2010, 18:54
Grazie per l'aiuto, ma è un po' più complicato:
Il processo che io vado a terminare non è stato avviato dal file .bat, ma è già attivo da prima.

In pratica... io avvio il file .bat, contenente il testo seguente:

cmd /c start /w C:\Programmi\"Electronic Arts"\"Need For Speed World"\GameLauncher.exe

in breve, avvio il GameLauncher di questo gioco. Il processo del gioco vero e proprio però è NFSW.exe e si avvia solamente da GameLauncher.exe, impossibile farlo partire dal file .bat.

Per cui, il vero processo che a me interessa, NFSW.exe, non è presente nel testo del file .bat
Vorrei che, appena terminato NFSW.exe partisse il seguente comando
taskkill /F /IM Xpadder.exe

BeLakor
23-09-2010, 21:17
Grazie per l'aiuto, ma è un po' più complicato:
Il processo che io vado a terminare non è stato avviato dal file .bat, ma è già attivo da prima.

In pratica... io avvio il file .bat, contenente il testo seguente:



in breve, avvio il GameLauncher di questo gioco. Il processo del gioco vero e proprio però è NFSW.exe e si avvia solamente da GameLauncher.exe, impossibile farlo partire dal file .bat.

Per cui, il vero processo che a me interessa, NFSW.exe, non è presente nel testo del file .bat
Vorrei che, appena terminato NFSW.exe partisse il seguente comando

Oddio...quindi vuol dire che il .bat deve rimanere in ascolto per tutto il tempo, controllare periodicamente se presente tra i processi NFSW.exe e quando non lo trova far partire il comando successivo? :confused:
Naaa....piuttosto tramite GameLauncher.exe controlla come viene fatto partire NFSW.exe, di sicuro alla chiamata del .exe vengono aggiunti dei parametri ed è per questo che non riesci a chiamarlo direttamente dal batch.

BeLakor

zuper
23-09-2010, 21:33
Oddio...quindi vuol dire che il .bat deve rimanere in ascolto per tutto il tempo, controllare periodicamente se presente tra i processi NFSW.exe e quando non lo trova far partire il comando successivo? :confused:


assolutissimamente d'accordo...
i batch non sono fatti per loopare in continuazione :=)