2016-08-03 2 views
0

Ich habe ein Batch-Skript A. Dieses Skript führen eine EXE-Anwendung und nach einer Weile, das Skript A stoppen Sie die. EXE-Anwendung. Mein Problem ist, dass ich mein Skript A in mehreren Shells ausführe. Folglich führe ich mehrere Male gleichzeitig dieselbe .exe-Anwendung aus (aber mit unterschiedlicher PID)Script Batch, externe exe ausführen und seine PID

Meine Frage ist, im Batch, wie kann ich eine externe EXE ausführen und seine PID bekommen? Wenn ich die exe ausführen und ich seine PID abfange, kann ich die "gute" .exe beenden.

+0

AFAIK ausführbare Dateien haben kein Geschlecht. – npocmaka

Antwort

1
For /f "tokens=2 delims=;= " %A in ('wmic process call create notepad.exe ^| findstr /c:ProcessId') Do Echo %A 

Für ist der Befehl, Ausgabe von einem Befehl zu erhalten. WMIC gibt die PID für die gestarteten Programme zurück.

wmic process call create notepad.exe 

In einer Batch-Datei Verwendung %%A statt %A beim Tippen.

+0

Danke für Ihre Antwort! Ich bin nicht sehr gut im Batch-Scripting, können Sie mir ein Beispiel geben, wo der Batch die .exe im aktuellen Verzeichnis ausführen? – user2137454

+0

Ich finde =) Für/f "Token = 2 delims =; ="% A in ('wmic Prozessaufruf erstellen "C: \ pathtotestbat \ test.bat"^| findstr/c: ProzessId') Do Echo% A – user2137454

Verwandte Themen