# Prozess beenden



## MedRamBO (6. November 2007)

Hallo,
ich verusche mit einer Batch File einen Prozess der vorher gestarted wurde zu beenden.
Im Moment bin ich soweit, dass die File SUBTEMP.exe und auch TEMP.exe startet. Aber die Prozesse lassen sich nicht mit STOP TEMP/SUBTEMP.exe stoppen. Hat jemand eine Idee warum? Im Taskmanager sind die beiden Prozesse aufgelistet.. Und die beiden Windows Application Fenster erscheinen auch. Nur lassen Sie sich nicht mehr schließen. Ich hoffe ich konnte es genau genug beschreiben 
Ich bin leider überfragt 

PS: Die Leerzeilen und Comments dienen zur zur Übersicht und dem Verständnis. Im richtigen Code sind diese nicht vorhanden!


```
START SUBTEMP.exe     //startet die sub.exe
if exist %TEMP.exe goto YES     //wenn TEMP.exe existiert gehe zu Label YES
goto NO     //wenn nicht gehe zu Label NO

:YES     //label yes
START TEMP.exe     //startet die exe
ping -n 11 127.0.0.1 > NUL     //pause von 10 sekunden
STOP TEMP.exe     //stoppt die exe

:NO     //label no
STOP SUBTEMP.exe     //stoppt die sub.exe
echo Please copy the TEMP.exe in this folder!     //ausgabe
echo Press a key to continue...     //ausgabe
pause     //auf tastendruck warten
```

Danke für alle Antworten im vorraus


----------



## Sinac (6. November 2007)

Ich würde das mit Taskkill machen:

```
taskkill /FI "USERNAME eq %username%" /FI "IMAGENAME eq TEMP.exe" /F
```
Ich gehe einfach mal von einem Windows NT System aus


----------



## MedRamBO (6. November 2007)

Es handelt sich um ein XP System.

Ich habe folgendes Problem mit dem oben genannten Taskkill:

In der Batch Datei sieht der Code wie folgt aus:

```
taskkill /FI "USERNAME eq %username%" /FI Temp.exe /F
```
"Der Befehl "taskkill" ist entweder falsch geschrieben oder konnte nicht gefunden werden."

Ich habe mal im Taskmanager nachgeguckt wie sich das schreibt.
Unter Prozesse findet man Ihn als:   "Temp.exe
Unter Anwendungen als:  "Temp Window" was der Fensterüberschrift entspricht..

Hat jemand eine Idee was ich falsch mache?


----------



## Sinac (6. November 2007)

> "Der Befehl "taskkill" ist entweder falsch geschrieben oder konnte nicht gefunden werden."



Das würde ja bedeuten das er Taskkill nicht findet, das ist aber bei Windows XP auf jeden Fall dabei!

Es muss als zweiter Filter auch "IMAGENAME eq TEMP.exe" angegeben werden, so wie ich oben geschrieben habe. Imagename gibt den Namen des Prozesses an.


----------



## MedRamBO (6. November 2007)

Ich glaub ich verstehe das falsch. Der Name des Fensters ist Temp_Window und der Prozessname Temp.exe.. Hab es noch mal probiert aber immer noch der selbe fehler 

taskkill /FI "USERNAME eq %username%" /FI "Temp_Window eq Temp.exe" /F


----------



## Sinac (6. November 2007)

Ja, du verstehst es falsch, arghh 
Schreib es einfach so wie ich es gepostet hab:
	
	
	



```
taskkill /FI "USERNAME eq %username%" /FI "IMAGENAME eq TEMP.exe" /F
```


----------



## MedRamBO (6. November 2007)

Da muss irgentwo noch ein Fehler sein. Auch Prozesse wie ICQ.exe usw. lassen sich so nicht schließen. Immer der selbe Fehler: Der Befehl "taskkill" ist entweder falsch geschrieben oder konnte nicht gefunden werden.
Ich benutze eine Start_it.bat Datei und mein Betriebssystem ist: Windows Home Edition 2002 SP2.
Könntest du es vielleicht mal auf deinem Rechner ausprobieren? Es ist auf jeden Fall nicht falsch geschrieben:

```
START Test.exe
echo Started
ping -n 3 127.0.0.1 > NUL
taskkill /FI "USERNAME eq %username%" /FI "IMAGENAME eq Test.exe" /F
echo Closed
pause
```


----------



## Sinac (6. November 2007)

Ok, hab grade mal gesucht, Taskkill gibts nur bei XP Prof, da liegt das Problem. Alternativ könntest du pskill vom Sysinternals nehmen.


----------



## MedRamBO (6. November 2007)

Der Code müsste dann wie aussehen? Hab ich noch nie gehört^^ Sry das ich so viel Hilfe brauche   *schäm*  Müsste aber auf allen XP SP2 PC`s laufen, weil das Programm im Betrieb eingesetzt werden soll


----------



## Sinac (6. November 2007)

Pskill musst du extra von Sysinternals runterladen und installiern, wie es dann genau aufgerufen wird erfährst du sicherlich in der Hilfe


----------



## MedRamBO (6. November 2007)

Das Problem dabei ist, dass es im Betrieb laufen muss. Dort wird die Batch Datei eingesetzt und ich kann nicht auf jedem PC das Programm installieren. Ist eigentlich komisch.. mit Start Test.exe lässt sich das so schön einfach starten. Muss doch auch irgentwie beendet werden können


----------



## MedRamBO (6. November 2007)

Hat keiner eine Idee? Es muss doch einen Weg geben.. Windows ist doch so toll^^


----------



## Sinac (7. November 2007)

Probiers mal damit:
http://www.pcwelt.de/index.cfm?pid=662&pk=132818
musste dann halt bei deinem Script mitliefern


----------



## olqs (7. November 2007)

Um nichts installieren zu müssen, könntest du auch das Programm das du zum beenden des Prozess nimmst (taskkill, pskill, ...) auf nem Netzwerk-Share ablegen und dann in der Shell/Batch so starten:

```
\\server\sharename\program.exe -parameter
```


----------

