6741
Goto Top

Programm welches im Prozess stehen geblieben ist, per Batch killen

Teil 3 der beliebten Serie ...

Biber und AxelHahn haben mir schon sehr gute Tipps gegeben ...

ich müsste den stehen gebliebenden Prozess finden und dann ein Taskkill laufen lassen ..

aber wie finde ich den Prozess ??

wenn ich vorher noch nicht weiß, welcher Prozess stehen bleiben kann. STATUS gibt mir nur die Info des vorher angebenden Prozess ....

Content-Key: 36205

Url: https://administrator.de/contentid/36205

Ausgedruckt am: 28.03.2024 um 18:03 Uhr

Mitglied: AxelHahn
AxelHahn 19.07.2006 um 09:04:26 Uhr
Goto Top
nur als Denkanstoss...
Ich weiss nicht den Status, den das Kommando tasklist bei hängenden Tasks zurückliefert.
Wenn ein Prozess den angegebenen Status hat, erfolgt ein echo mit den taskkill-Parametern. Zum tatsächlichen Beenden ist das echo zu entfernen:
@echo offset hang=AUSGABENAME_BEI_STEHENDEM_PROZESSfor /F "tokens=1-7" %%a in ('tasklist /v') do ( if "%%g"=="%hang%" echo TASKKILL /PID %%b)pause


Viel Spass beim Basteln wünscht
Axel
Mitglied: 6741
6741 19.07.2006 um 09:18:02 Uhr
Goto Top
Moin Axel...

werde ich testen ...

aber was anderes ...

wie kann ich ein Prozess kontrolliert abstützen lassen ...

damit ich testen kann ...
Mitglied: 6741
6741 19.07.2006 um 15:31:57 Uhr
Goto Top
meine Beobachtung haben ergeben das der Prozess keine Rückgabewert gibt ( keine Rückmeldung ) Message.

Ich weis aber wenn die EXE in der Speichernutzung sich nicht verändert, dann ist das Programm stehen geblieben.

edit ...

wenn man jetzt, zur Sicherheit 3x guckt ob der Speicher sich ändert, tut es nicht dann "kill-you" ändern sich der Wert ist alles ok, aber vor muss gegukct werden ob die exe im Task ist ...

hoffe auf eure Hilfe

danke ...
Mitglied: AxelHahn
AxelHahn 20.07.2006 um 00:11:31 Uhr
Goto Top
Nur als Anmerkung,
ganz so funktioniert es leider nicht, so nach dem Motto: ich habe ein paar Ideen - setzt mir das bitte um. Punktuell Unterstützung zu geben, damit habe ich hingegen kein Problem.

Irgendwie könnte man es sicher hinbekommen, sich den Status der Applikationen zu merken (indem man sie in ein Logfile schreibt) und zu vergleichen (mit fc - oder die letzte Logdatei zeilenweise auslesen und in den letzten Logs nach dieser App suchen und die Zeilen vergleichen).

Aber dies ist nicht so trivial, als dass ich das mal schnell dahinzaubern könnte und zudem noch halbwegs zufriedenstellend läuft.

Was spricht gegen eine GUI? Grafische Anzeigen, Infos zu allen Prozessen noch und nöcher und im Sekundenintervall aktualisiert. Da kommt kein Batchfile mit.
Ich denke da an Processexplorer (www.sysinternals.com) - ich hoffe, die Seite gibt es noch, nachdem die von Micro$oft aufgekauft wurden ...


Schönen Abend dennoch...
Axel
Mitglied: Biber
Biber 20.07.2006 um 00:25:41 Uhr
Goto Top
@AxelHahn
Zu dem sysinternals-Deal:
Das ist wirklich ein Hammer.... das sehen sicherlich viele eher skeptisch oder mit Horrorvisionen ("Genuine-Check beim Download von sysinternal-Tools *brrrrrrrrr*).

Hoffentlich folgen nicht auch joeware und Nirsoft...
Mitglied: 6741
6741 20.07.2006 um 08:40:52 Uhr
Goto Top
Hallo ...

ich möchte auf dem System keine externen Tools installieren, werde mir das aber mal angucken.

Von der Idee zur Datei ...

Leider habe ich die Idee kann sie aber nicht umsetzen weil mir da wohl grundlegende Anforderungen fehlen. Bin kein Programmierer oder gelernter Admin, alles "selfmade".

Zur Idee.

Hätte überlegt in kurzen Abständen den Speicher auszuelesen und eine Variable setzten diese müssten dann vergleichen werden, ist der Wert gleich würde die bedingung eintreffen das das Programm wohl stehen geblieben ist. Ändert sich der Wert ist alles okay ...

Evtl könnte ich noch einen Tip bekommen ...

wie setzt man die Speicher Abfrage als variable ?

sonst schönen Tag noch ...
Mitglied: AxelHahn
AxelHahn 20.07.2006 um 14:37:58 Uhr
Goto Top
@Biber:
Mir kam dem Lesen der Meldung auch sofort das Sch-Wort in den Sinn (nicht "schade" - das andere).
Die beiden anderen kannte ich gar nicht. Werde ich mal bei Gelegenheit nachsehen.

@6741
-- Die Tools von Sysinternals laufen ohne Installation - einfach das Zip auspacken. Der Process Explorer ist bei uns auf diverse Server gepackt worden.
-- Im Moment bin ich im Stress - kurz vor meinem Urlaub muss ich noch einiges fertigstellen und einen Plan für meine Abwesenheit machen. Im Moment habe ich nicht nebenbei die Luft zum "Basteln". Grundsätzlich halte ich eine Bat-Datei aber nicht für geeignet...

Bis demnächst mal wieder!
Axel
Mitglied: fels02
fels02 25.08.2006 um 13:02:51 Uhr
Goto Top
Hallo,

mir ist noch nicht ganz klar, warum das ganze passiert.

Welcher Prozess bleibt stehen und wo (PC oder Server)?

Das Suchen ist müßig, solange du die Ursache des Stehenbleibens nicht weisst.

Kannst du denn den Prozeß manuell ermitteln und wenn ja, welcher ist das. Windows-Dienst oder .Exe als Dienst o.ä. ? Dann kann man auch sinnvoller an die Lösung herangehen. Alles andere ist Bastelei.

Viele Grüße

fels02
Mitglied: 6741
6741 05.07.2007 um 17:08:02 Uhr
Goto Top
Hallo noch mal ...

wie kille ich den Task der länger z.b. 5 min läuft?

Gruß