Batch Taskkill plötzlich Zugriff verweigert?

Zwnow  14.02.2023, 19:27

Hatten die von der Batch betroffenen Programme oder dein OS zufällig Updates?

tete123655 
Fragesteller
 04.03.2023, 10:38

Ja zwei mal

1 Antwort

Wenn Du die Parameter in der angegebenen Reihenfolge benutz, dürfte der Befehl noch nie funktioniert haben. Richtig rum:

taskkill /im "Programm.exe" /t /f

Der Zugriff mit Taskkill auf einen laufenden Prozess wird verweigert, wenn Du der Prozess von einem anderen Nutzer oder/und mit Adminrechten gestartet wurde. Zum "Killen" eines solchen Prozesses benötigst Du Adminrechte!

In diesem Kontext, kann es auch zu Zugriffs-Fehlern kommen, wenn der /t Parameter verwendet wird. Dieser bewirkt das löschen einer ganzen Prozesshierarchie und sollte mit sehr viel bedacht verwendet werden, da moderne Windows Systeme gestarteten Prozessen automatisch Sicherheits-/Systemrelevante Subprozesse zuordnen können.

Wenn ein Prozess (ohne /t) beendet wird, werden vom System zugeordnete Subprozesse automatisch beendet.

Ganz nebenbei ist es keine gute Art, Prozesse gewaltsam zu beenden. Taskkill an sich ist schon ein "schlimmer" Befehl . Mit dem Parameter /f wird nicht nur eine "Bitte zum Schließen" übermittelt, sondern der Prozess im wahrsten Sinne des Wortes getötet. Mit potenziellen folgen für das System...: vom Prozess angeforderte Resourcen werden nicht in jedem Falle freigegeben. In nativen Callbackanforderungen/Hooks angegebene Adressen führen zu nicht mehr vorhandenen Code.

Hast Du mal überlegt den "unerwünschten" Prozess garnicht erst zu starten.

Woher ich das weiß:eigene Erfahrung – Ich mach das seit 30 Jahren
tete123655 
Fragesteller
 04.03.2023, 10:39

Ja das liegt daran, dass /im erst später dazu kam. Aber auch ohne /im lief es auch nicht mehr.

0