Deinstallationsprozess
Veröffentlicht: 22. Februar 2018 – 19:21 Uhr
Guten Abend, ich habe ein Paket erstellt , das eine .exe-Datei ohne besondere Berechtigungen in ein Verzeichnis kopiert und anschließend einen Registry-Schlüssel erstellt. Ich hatte alle Deinstallationsschritte in die Prozedur "def uninstall()" aufgenommen, erhalte aber die Fehlermeldung „Datei nicht gefunden“. Als ich die Aktionen in "def uninstall" auskommentierte, war ich überrascht und bemerkte erst später, dass die einfache Definition der Deinstallationsprozedur ohne weitere Aktionen die .exe-Datei und den Registry-Schlüssel löscht und versucht, das Verzeichnis zu löschen. Ich bin überrascht, dass das Paket all diese Aktionen kennt! Ich vermute, es gibt einen Paketcache. Das Entfernen des Pakets mit wapt-get clean und update ändert nichts. Auch das Entfernen des Pakets aus dem Repository hilft nicht. Das Problem besteht in beiden Paketvarianten, mit und ohne Aktion in "def uninstall". Ich erhalte immer noch eine Warnung, die den Deinstallationsprozess abbricht. Dieser ist weiterhin unvollständig, das Verzeichnis wird nicht gelöscht, und anscheinend kann die Deinstallation dies nicht durchführen. Speicherplatz wird freigegeben ... 2018-02-22 19:07:34,961 WARNUNG Fehler: (2, 'GetFileVersionInfo:GetFileVersionInfoSize', 'Das System kann die angegebene Datei nicht finden.') 2018-02-22 19:07:34,964 WARNUNG Fehler: (2, 'GetFileVersionInfo:GetFileVersionInfoSize', 'Das System kann die angegebene Datei nicht finden.') 2018-02-22 19:07:34,967 WARNUNG Fehler: (2, 'GetFileVersionInfo:GetFileVersionInfoSize', 'Das System kann die angegebene Datei nicht finden.') 2018-02-22 19:07:34,969 KRITISCH Fehler beim Ausführen des Deinstallationsskripts: [Errno 2] Datei oder Verzeichnis nicht gefunden: 'DiskSpace.exe' === Entfernte Pakete === Speicherplatz === Fehler beim Entfernen von Paketen === diskspace Hier ist der Inhalt meiner Deinstallationsroutine: def uninstall(): print('GRDF-DiskSpace wird deinstalliert') # killalltasks('DiskSpace.exe') # registry_delete(HKEY_LOCAL_MACHINE, r'software\Microsoft\Windows\CurrentVersion\Run','DiskSpace') # time.sleep(5) # if isdir(DiskSpacePath): # remove_tree(DiskSpacePath,ignore_errors=True) Hat jemand eine Idee?