killtask beendet task nicht
Verfasst: 18 Mär 2022, 13:39
Ausgangslage:
Ein Programm soll auf einem Client deinstalliert werden.
Vor einer Deinstallation auf einem Client wird nach einem laufenden Prozess gesucht, dieser beendet und erst dann deinstalliert.
Was passiert:
Ein laufender Prozess wird gefunden aber nicht beendet.
Die Deinstallation wird fortgesetzt und fäschlicherweise von opsi als erfolgreich bezeichnet.
Auf dem Bildschirm ist zu sehen, dass das Programm noch offen ist, auch nach der durchgeführten Deinstallation.
Bei Wiederinstallation kommt es aufgrund unvollständiger Deinstallation zu Problemen, bis hin zu ungeplanten Neustarts.
Getestet mit mehreren Programmen.
Sobald jmd eingeloggt ist, das Programm aktiv und 'on demand'-Deinstalliert wird, wird immer der Task nicht beendet.
Opsi-Versionen:
Server: opsiconfd 4.2.0.245 [python-opsi=4.2.0.276]
Client: opsi-client-agent 4.2.0.20
opsi-script 4.12.4.36-2
Ein Programm soll auf einem Client deinstalliert werden.
Vor einer Deinstallation auf einem Client wird nach einem laufenden Prozess gesucht, dieser beendet und erst dann deinstalliert.
Code: Alles auswählen
DefFunc delsub() : void
; -- Hauptteil -----------------------------------------------------------------------------------------------------
; exe oder andere Datei des Programms zum prüfen ob es schon installiert ist
if FileExists($CheckFile$)
;Laufenden Prozess beenden
Killtask "cdbxpp.exe"
; bei Installern wie installshield, inno, nsis usw.
Winbatch_uninstall
; Prüfen der Exitcodes auf Fehlerfall (Inno, InstallShield, Intel, MSI, NSIS, SAP, WU)
kiz_checkExitCodeInno()
; löschen von Dateien
Files_Uninstall
endif
Ein laufender Prozess wird gefunden aber nicht beendet.
Die Deinstallation wird fortgesetzt und fäschlicherweise von opsi als erfolgreich bezeichnet.
Code: Alles auswählen
(295) [6] [2022-03-18 12:25:52.845] [app_cdburnerxp] FileExists($CheckFile$) <<< result true
(296) [6] [2022-03-18 12:25:52.845] [app_cdburnerxp] Then
(297) [8] [2022-03-18 12:25:52.845] [app_cdburnerxp] Could not get handle for current session: no user
(298) [7] [2022-03-18 12:25:52.846] [app_cdburnerxp] Strange: different users found: + Administrator
(299) [7] [2022-03-18 12:25:52.846] [app_cdburnerxp] Session owner found: \
(300) [7] [2022-03-18 12:25:52.881] [app_cdburnerxp] Will not kill exe: cdbxpp.exe pid: 3304 from user: TEST-VM-0013\Administrator
(301) [6] [2022-03-18 12:25:52.881] [app_cdburnerxp] Nothing to stop, no instances of "cdbxpp.exe" found
(302) [5] [2022-03-18 12:25:52.881] [app_cdburnerxp] Execution of: Winbatch_uninstall
Bei Wiederinstallation kommt es aufgrund unvollständiger Deinstallation zu Problemen, bis hin zu ungeplanten Neustarts.
Getestet mit mehreren Programmen.
Sobald jmd eingeloggt ist, das Programm aktiv und 'on demand'-Deinstalliert wird, wird immer der Task nicht beendet.
Opsi-Versionen:
Server: opsiconfd 4.2.0.245 [python-opsi=4.2.0.276]
Client: opsi-client-agent 4.2.0.20
opsi-script 4.12.4.36-2