80 Zeilen
2.8 KiB
Plaintext
80 Zeilen
2.8 KiB
Plaintext
; SkillMate Inno Setup Script
|
|
; Erstellt professionelle Windows-Installer
|
|
|
|
#define MyAppName "SkillMate"
|
|
#define MyAppVersion "1.0.0"
|
|
#define MyAppPublisher "SkillMate Development"
|
|
#define MyAppURL "https://skillmate.local"
|
|
#define MyAppExeName "SkillMate.exe"
|
|
|
|
[Setup]
|
|
AppId={{8B3F4D2A-1E5C-4A7B-9C3D-2F1A6E8B9D7C}
|
|
AppName={#MyAppName}
|
|
AppVersion={#MyAppVersion}
|
|
AppPublisher={#MyAppPublisher}
|
|
AppPublisherURL={#MyAppURL}
|
|
AppSupportURL={#MyAppURL}
|
|
AppUpdatesURL={#MyAppURL}
|
|
DefaultDirName={autopf}\{#MyAppName}
|
|
DisableProgramGroupPage=yes
|
|
LicenseFile=..\..\..\LICENSE.txt
|
|
OutputDir=..\..\dist
|
|
OutputBaseFilename=SkillMate-Setup-{#MyAppVersion}
|
|
SetupIconFile=..\build\icon.ico
|
|
Compression=lzma2/max
|
|
SolidCompression=yes
|
|
WizardStyle=modern
|
|
PrivilegesRequired=admin
|
|
ArchitecturesAllowed=x64
|
|
ArchitecturesInstallIn64BitMode=x64
|
|
UninstallDisplayName={#MyAppName}
|
|
UninstallDisplayIcon={app}\{#MyAppExeName}
|
|
VersionInfoVersion={#MyAppVersion}
|
|
VersionInfoCompany={#MyAppPublisher}
|
|
VersionInfoDescription=Skill-Management für Sicherheitsbehörden
|
|
VersionInfoCopyright=Copyright (C) 2024 {#MyAppPublisher}
|
|
VersionInfoProductName={#MyAppName}
|
|
VersionInfoProductVersion={#MyAppVersion}
|
|
|
|
[Languages]
|
|
Name: "german"; MessagesFile: "compiler:Languages\German.isl"
|
|
|
|
[Tasks]
|
|
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: checked
|
|
Name: "quicklaunchicon"; Description: "{cm:CreateQuickLaunchIcon}"; GroupDescription: "{cm:AdditionalIcons}"; OnlyBelowVersion: 6.1; Flags: checked
|
|
|
|
[Files]
|
|
Source: "..\dist\win-unpacked\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs
|
|
Source: "..\..\backend\dist\*"; DestDir: "{app}\resources\backend"; Flags: ignoreversion recursesubdirs createallsubdirs
|
|
Source: "..\..\backend\node_modules\*"; DestDir: "{app}\resources\backend\node_modules"; Flags: ignoreversion recursesubdirs createallsubdirs
|
|
|
|
[Icons]
|
|
Name: "{autoprograms}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"
|
|
Name: "{autodesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: desktopicon
|
|
Name: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: quicklaunchicon
|
|
|
|
[Run]
|
|
Filename: "{app}\{#MyAppExeName}"; Description: "{cm:LaunchProgram,{#StringChange(MyAppName, '&', '&&')}}"; Flags: nowait postinstall skipifsilent
|
|
|
|
[Code]
|
|
function InitializeSetup(): Boolean;
|
|
var
|
|
ResultCode: Integer;
|
|
begin
|
|
// Check for .NET Framework or Visual C++ Redistributables if needed
|
|
Result := True;
|
|
end;
|
|
|
|
procedure CurStepChanged(CurStep: TSetupStep);
|
|
begin
|
|
if CurStep = ssPostInstall then
|
|
begin
|
|
// Create necessary directories
|
|
ForceDirectories(ExpandConstant('{userappdata}\SkillMate\logs'));
|
|
ForceDirectories(ExpandConstant('{userappdata}\SkillMate\data'));
|
|
end;
|
|
end;
|
|
|
|
[UninstallDelete]
|
|
Type: filesandordirs; Name: "{userappdata}\SkillMate"
|