Seite 1 von 1

Deinstallieren und Deinstallierenstring

Veröffentlicht: 28. September 2016 – 13:11 Uhr
von Stenon
Hallo,

hier ist mein setup.py-Code.

Es handelt sich um eine Batch-Datei für die Installation, die einwandfrei funktioniert. Ich versuche nun, die Deinstallation ebenfalls mit einer Batch-Datei durchzuführen, aber diese stürzt ab.

Welche der beiden Optionen sollte ich verwenden: `uninstall` oder `uninstallstring`? Vielen Dank für die Hilfe!

from setuphelpers import *
uninstallkey = []
uninstallstring = [u'"C:\\FirewallRemoveEsetRule.bat"']

def install():
run(r'"FirewallAddEsetRule.bat"')

def uninstall():
run(u'"FirewallRemoveEsetRule.bat"')

und Fehler:
2016-09-28 15:09:00,963 WARNUNG Warnung: CalledProcessError: Befehl '(u'"C:\\FirewallRemoveEsetRule.bat"',)' gab den Exit-Status 1 ungleich Null zurück
2016-09-28 15:09:00,986 KRITISCH Fehler beim Ausführen des Deinstallationsskripts: Befehl '(u'"FirewallRemoveEsetRule.bat"',)' gab den Exit-Status 1 ungleich Null zurück
=== Entfernte Pakete ===
allowesetinstall
=== Fehler beim Entfernen von Paketen ===
allowsetinstall

Betreff: Deinstallation und Deinstallationszeichenfolge

Veröffentlicht: 10. April 2017 - 16:32 Uhr
von Nathanael
Hallo,
haben Sie inzwischen eine Lösung für dieses Problem gefunden?
Nathanael

Betreff: Deinstallation und Deinstallationszeichenfolge

Veröffentlicht: 10. April 2017 - 16:58 Uhr
von agauvrit
Guten Morgen,
Stenon schrieb:

Code: Alle auswählen

from setuphelpers import *
uninstallkey = []
uninstallstring = [u'"C:\\FirewallRemoveEsetRule.bat"']

def install():
    run(r'"FirewallAddEsetRule.bat"')

def uninstall():
    run(u'"FirewallRemoveEsetRule.bat"')

Während der Installation läuft Ihr *.bat-Skript problemlos, da es in Ihrem Paket enthalten ist (nehme ich an?)

Die Deinstallation schlägt jedoch fehl, da während des gesamten Installationsprozesses dieses Skript nicht in das Stammverzeichnis des Laufwerks C:\ kopiert und eingefügt wird

Wenn Sie möchten, dass dies funktioniert, verwenden Sie eine Dateikopierfunktion filecopytoDadurch können Sie Ihr Skript aufrufen FirewallRemoveEsetRule.bat während der Deinstallation.

Der Quellcode würde dann wie folgt aussehen:

Code: Alle auswählen

from setuphelpers import *
uninstallkey = []

def install():
    run(r'"FirewallAddEsetRule.bat"')
    filecopyto("FirewallRemoveEsetRule.bat","C:\\")

def uninstall():
    run(u'"C:\\FirewallRemoveEsetRule.bat"')
Aufrichtig,

Alexander

Betreff: Deinstallation und Deinstallationszeichenfolge

Veröffentlicht: 22. April 2017 - 12:55 Uhr
von Stenon
Danke,

ich hatte in der Zwischenzeit ein zweites wapt-Paket erstellt, das remove.bat aufruft.

Aber nochmals herzlichen Dank für Ihre Erklärung und die klare Antwort!

PS: Das Live-Video war wirklich sehr gut; wir kennen Sie jetzt anscheinend besser.