Files
zwischenablage-server/client-desktop/packaging/windows-installer.iss
T
duffyduck 5d68a673d3 Release v1.0.2
### Geändert
- Bauen und Releases über `./build.sh` (release, build, test): läuft komplett in temporären
  Docker-Containern, auf dem Rechner wird außer Docker nichts mehr benötigt.
- Android-Build-Image enthält die Platform-Tools fest (schnellere Builds).
2026-10-17 13:42:23 +00:00

72 lines
2.4 KiB
Plaintext

; Inno Setup Skript fuer NetClip (erst "python build.py" unter Windows ausfuehren).
; Interaktiv: NetClip-Setup.exe
; Stille Verteilung (GPO, Intune, PDQ, ...):
; NetClip-Setup.exe /VERYSILENT /SUPPRESSMSGBOXES /SERVER=https://clip.example.de /TOKEN=xyz [/SERVERKEY=abc] [/INSECURE=1]
; Die Werte landen in config.default.json im Programmordner und gelten fuer jeden Benutzer beim ersten Start.
; Autostart fuer alle Benutzer wird per HKLM-Run-Key eingerichtet.
#define AppVersion "1.0.2"
[Setup]
AppId={{6C1E8B0B-4E39-4E0C-9C0B-6E1F2C9D5A11}
AppName=NetClip
AppVersion={#AppVersion}
AppPublisher=NetClip
DefaultDirName={autopf}\NetClip
DefaultGroupName=NetClip
OutputDir=..\dist
OutputBaseFilename=NetClip-Setup-{#AppVersion}
Compression=lzma2
SolidCompression=yes
ArchitecturesInstallIn64BitMode=x64compatible
PrivilegesRequired=admin
SetupIconFile=netclip.ico
UninstallDisplayIcon={app}\NetClip.exe
CloseApplications=force
[Languages]
Name: "de"; MessagesFile: "compiler:Languages\German.isl"
[Tasks]
Name: "autostart"; Description: "NetClip beim Anmelden starten (alle Benutzer)"
[Files]
Source: "..\dist\NetClip\*"; DestDir: "{app}"; Flags: recursesubdirs ignoreversion
[Icons]
Name: "{group}\NetClip"; Filename: "{app}\NetClip.exe"
Name: "{group}\NetClip deinstallieren"; Filename: "{uninstallexe}"
[Registry]
Root: HKLM; Subkey: "Software\Microsoft\Windows\CurrentVersion\Run"; ValueType: string; ValueName: "NetClip"; \
ValueData: """{app}\NetClip.exe"" --minimized"; Flags: uninsdeletevalue; Tasks: autostart
[Run]
Filename: "{app}\NetClip.exe"; Description: "NetClip starten"; Flags: nowait postinstall skipifsilent runasoriginaluser
[Code]
function JsonEscape(S: String): String;
begin
StringChangeEx(S, '\', '\\', True);
StringChangeEx(S, '"', '\"', True);
Result := S;
end;
procedure CurStepChanged(CurStep: TSetupStep);
var
Server, Verify: String;
begin
if CurStep = ssPostInstall then
begin
Server := ExpandConstant('{param:SERVER|}');
if Server <> '' then
begin
if ExpandConstant('{param:INSECURE|0}') = '1' then Verify := 'false' else Verify := 'true';
SaveStringToFile(ExpandConstant('{app}\config.default.json'),
'{"server": "' + JsonEscape(Server) + '", "token": "' + JsonEscape(ExpandConstant('{param:TOKEN|}')) +
'", "server_key": "' + JsonEscape(ExpandConstant('{param:SERVERKEY|}')) + '", "verify_tls": ' + Verify + '}',
False);
end;
end;
end;