Guten Morgen
Ich habe das neue Paket mit der Version 2022 erstellt und dabei darauf geachtet, die Werte des Deinstallationsschlüssels in den .xcfg-Dateien und den umbenannten Verzeichnissen anzupassen
Das Problem besteht weiterhin: Der Deinstallationsbefehl funktioniert nicht. Ich weiß nicht, ob bei der Installation der neuen Version ein neues Verzeichnis erstellt oder das alte überschrieben wird.
Und noch ein weiteres, wiederkehrendes Problem, das ich nicht verstehe. Wenn ich die Installation testweise über PyScripter ausführe, funktioniert sie einwandfrei auf dem PC, auf dem die Wapt-Konsole läuft. Wenn ich sie jedoch auf anderen PCs bereitstelle, erhalte ich folgende Fehlermeldung:
Datei "C:\Program Files (x86)\wapt\waptutils.py", Zeile 2126, in run
raise CalledProcessErrorOutput(proc.returncode, cmd, ''.join(output))
waptutils.CalledProcessErrorOutput: Der Befehl '"Install_PRNclient_FR_2022.0.2.1_win64.exe" -s -f1C:\\WINDOWS\\TEMP\\wapt4g0p39cy\\installPRONOTE.iss' hat den Exit-Status 1 zurückgegeben.
Ausgabe: '"Install_PRNclient_FR_2022.0.2.1_win64.exe"' wird nicht als interner Befehl erkannt
oder extern, ein ausführbares Programm oder eine Batchdatei.
Warum verweist es auf den falschen Ordner: -f1C:\\WINDOWS\\TEMP\\wapt4g0p39cy\\installPRONOTE.iss? Die Datei installPRONOTE.iss sollte idealerweise aus dem Paketordner in waptdev abgerufen werden, da ich sie dort abgelegt habe. Wie kann ich diesen Ordner angeben? Was bedeutet die Variable %s? Und was bedeutet %basedir?
Hier ist das Paket:
Code: Alle auswählen
uninstallkey = ['{D1124ED8-514E-40BF-9021-D3B3CA941A53}']
def install():
run(r'"Install_PRNclient_FR_2022.0.2.1_win64.exe" -s -f1%s\installPRONOTE.iss' % basedir)
import time
time.sleep(3)
import os
os.system('taskkill /f /im "Client PRONOTE.exe"')
shutil.copyfile('ConfigClientsHttp.xcfg','C:\ProgramData\IndexEducation\Commun\ConfigClientsHttp.xcfg')
shutil.copyfile('Client PRONOTE.xcfg','C:\ProgramData\IndexEducation\PRONOTE\CLIENT\VERSION 2022-0\FR\Installations\{EE26865C-1E0D-D13E-3DC3-DC89333D079B}\Client PRONOTE.xcfg')
def uninstall():
run(r'"C:\Program Files (x86)\InstallShield Installation Information\{D1124ED8-514E-40BF-9021-D3B3CA941A53}\setup.exe" -s -uninst -f1%s\uninstPRONOTE.iss' % basedir)
shutil.rmtree('C:\ProgramData\IndexEducation','ignore_errors=True')