; Inno-Setup-Skript: Installation pro Benutzer (ohne Admin-Rechte) aus dist/Provisionsmanager/ ; Aufruf (siehe build/build_windows.sh): ISCC.exe /DAppVersion=1.2.3 build\installer.iss ; Ergebnis: dist/Provisionsmanager-Setup-.exe #ifndef AppVersion #error AppVersion fehlt – ISCC mit /DAppVersion= aufrufen #endif [Setup] ; AppId nie ändern: daran erkennt Windows bei Updates die bestehende Installation AppId={{79CF85D1-16DC-4FD5-924B-B6C9AFB90309} AppName=Provisions-Manager AppVersion={#AppVersion} AppPublisher=Handy-Insel Miesbach PrivilegesRequired=lowest DefaultDirName={localappdata}\Programs\Provisionsmanager DefaultGroupName=Provisions-Manager DisableProgramGroupPage=yes UninstallDisplayIcon={app}\Provisionsmanager.exe SetupIconFile=..\assets\app.ico OutputDir=..\dist OutputBaseFilename=Provisionsmanager-Setup-{#AppVersion} CloseApplications=yes WizardStyle=modern ; Benutzerdaten liegen in %APPDATA%\Provisionsmanager95 – das Setup fasst sie nicht an, ; der Deinstaller entfernt nur, was er selbst installiert hat. [Languages] Name: "de"; MessagesFile: "compiler:Languages\German.isl" [Tasks] Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked [InstallDelete] ; Update: Bibliotheken der alten Version entfernen, damit keine veralteten Dateien liegen bleiben Type: filesandordirs; Name: "{app}\_internal" [Files] Source: "..\dist\Provisionsmanager\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs [Icons] Name: "{autoprograms}\Provisions-Manager"; Filename: "{app}\Provisionsmanager.exe" Name: "{autodesktop}\Provisions-Manager"; Filename: "{app}\Provisionsmanager.exe"; Tasks: desktopicon [Run] Filename: "{app}\Provisionsmanager.exe"; Description: "{cm:LaunchProgram,Provisions-Manager}"; Flags: nowait postinstall skipifsilent ; Update aus dem Programm (/VERYSILENT /NEUSTART=1): danach wieder starten Filename: "{app}\Provisionsmanager.exe"; Flags: nowait; Check: NachUpdateStarten [Code] function NachUpdateStarten: Boolean; begin Result := ExpandConstant('{param:NEUSTART|0}') = '1'; end;