From a8caacec7c09f91f9fc1c36ad435b351b7072447 Mon Sep 17 00:00:00 2001 From: Jaex Date: Mon, 27 Dec 2021 18:57:32 +0300 Subject: [PATCH] Setup code refactoring --- .../InnoSetup/Recorder-devices-setup.iss | 9 +-- ShareX.Setup/InnoSetup/ShareX-setup.iss | 52 +++++++----------- ShareX.Setup/InnoSetup/WizardImageFile.bmp | Bin 154542 -> 0 bytes .../InnoSetup/WizardSmallImageFile.bmp | Bin 9294 -> 0 bytes 4 files changed, 24 insertions(+), 37 deletions(-) delete mode 100644 ShareX.Setup/InnoSetup/WizardImageFile.bmp delete mode 100644 ShareX.Setup/InnoSetup/WizardSmallImageFile.bmp diff --git a/ShareX.Setup/InnoSetup/Recorder-devices-setup.iss b/ShareX.Setup/InnoSetup/Recorder-devices-setup.iss index 397669114..f2fb628a7 100644 --- a/ShareX.Setup/InnoSetup/Recorder-devices-setup.iss +++ b/ShareX.Setup/InnoSetup/Recorder-devices-setup.iss @@ -1,23 +1,20 @@ #define MyAppName "Recorder Devices for ShareX" -#define MyAppVersion "0.12.10" #define MyAppRootDirectory "..\.." #define MyAppOutputDirectory MyAppRootDirectory + "\Output" #define MyAppLibDirectory MyAppRootDirectory + "\Lib" +#define MyAppVersion "0.12.10" [Setup] AppName={#MyAppName} AppVerName={#MyAppName} {#MyAppVersion} AppVersion={#MyAppVersion} -ArchitecturesAllowed=x86 x64 ia64 +ArchitecturesAllowed=x86 x64 arm64 ia64 ArchitecturesInstallIn64BitMode=x64 ia64 DefaultDirName={commonpf}\{#MyAppName} DefaultGroupName={#MyAppName} -DirExistsWarning=no -DisableReadyPage=no -DisableReadyMemo=no OutputBaseFilename=Recorder-devices-setup OutputDir={#MyAppOutputDirectory} -ShowLanguageDialog=no +SolidCompression=yes [Files] Source: "{#MyAppLibDirectory}\screen-capture-recorder.dll"; DestDir: {app}; Flags: regserver 32bit; Check: not IsWin64 diff --git a/ShareX.Setup/InnoSetup/ShareX-setup.iss b/ShareX.Setup/InnoSetup/ShareX-setup.iss index da09704f5..5b4558005 100644 --- a/ShareX.Setup/InnoSetup/ShareX-setup.iss +++ b/ShareX.Setup/InnoSetup/ShareX-setup.iss @@ -1,13 +1,14 @@ #define MyAppName "ShareX" #define MyAppRootDirectory "..\.." #define MyAppOutputDirectory MyAppRootDirectory + "\Output" -#define MyAppReleaseDirectory MyAppRootDirectory + "\ShareX\bin\Release" -#define MyAppFilename MyAppName + ".exe" -#define MyAppFilepath MyAppReleaseDirectory + "\" + MyAppFilename +#define MyAppReleaseDirectory MyAppRootDirectory + "\" + MyAppName + "\bin\Release" +#define MyAppFileName MyAppName + ".exe" +#define MyAppFilePath MyAppReleaseDirectory + "\" + MyAppFileName #dim Version[4] -#expr GetVersionComponents(MyAppFilepath, Version[0], Version[1], Version[2], Version[3]) +#expr GetVersionComponents(MyAppFilePath, Version[0], Version[1], Version[2], Version[3]) #define MyAppVersion Str(Version[0]) + "." + Str(Version[1]) + "." + Str(Version[2]) #define MyAppPublisher "ShareX Team" +#define MyAppURL "https://getsharex.com" #define MyAppId "82E6AC09-0FEF-4390-AD9F-0DD3F5561EFC" [Setup] @@ -16,36 +17,25 @@ AppId={#MyAppId} AppMutex={#MyAppId} AppName={#MyAppName} AppPublisher={#MyAppPublisher} -AppPublisherURL=https://getsharex.com -AppSupportURL=https://github.com/ShareX/ShareX/issues -AppUpdatesURL=https://github.com/ShareX/ShareX/releases +AppPublisherURL={#MyAppURL} AppVerName={#MyAppName} {#MyAppVersion} AppVersion={#MyAppVersion} -ArchitecturesAllowed=x86 x64 ia64 arm64 +ArchitecturesAllowed=x86 x64 arm64 ia64 ArchitecturesInstallIn64BitMode=x64 ia64 DefaultDirName={commonpf}\{#MyAppName} DefaultGroupName={#MyAppName} -DirExistsWarning=no -DisableStartupPrompt=yes -DisableWelcomePage=yes DisableProgramGroupPage=yes -DisableReadyPage=no -DisableReadyMemo=no -DisableFinishedPage=no LicenseFile={#MyAppRootDirectory}\LICENSE.txt MinVersion=6.1sp1 OutputBaseFilename={#MyAppName}-{#MyAppVersion}-setup OutputDir={#MyAppOutputDirectory} PrivilegesRequired=none -ShowLanguageDialog=no -UninstallDisplayIcon={app}\{#MyAppFilename} +SolidCompression=yes +UninstallDisplayIcon={app}\{#MyAppFileName} UninstallDisplayName={#MyAppName} VersionInfoCompany={#MyAppPublisher} VersionInfoTextVersion={#MyAppVersion} VersionInfoVersion={#MyAppVersion} -WizardImageFile=WizardImageFile.bmp -WizardImageStretch=no -WizardSmallImageFile=WizardSmallImageFile.bmp [Tasks] Name: "CreateDesktopIcon"; Description: "Create a desktop shortcut"; GroupDescription: "Additional shortcuts:"; Check: not IsUpdating and not DesktopIconExists @@ -54,8 +44,8 @@ Name: "CreateSendToIcon"; Description: "Create a send to shortcut"; GroupDescrip Name: "CreateStartupIcon"; Description: "Run ShareX when Windows starts"; GroupDescription: "Other tasks:"; Check: not IsUpdating [Files] -Source: "{#MyAppFilepath}"; DestDir: {app}; Flags: ignoreversion -Source: "{#MyAppFilepath}.config"; DestDir: {app}; Flags: ignoreversion +Source: "{#MyAppFilePath}"; DestDir: {app}; Flags: ignoreversion +Source: "{#MyAppFilePath}.config"; DestDir: {app}; Flags: ignoreversion Source: "{#MyAppReleaseDirectory}\*.dll"; DestDir: {app}; Flags: ignoreversion Source: "{#MyAppRootDirectory}\Licenses\*.txt"; DestDir: {app}\Licenses; Flags: ignoreversion Source: "{#MyAppOutputDirectory}\Recorder-devices-setup.exe"; DestDir: {app}; Flags: ignoreversion @@ -83,22 +73,22 @@ Source: "{#MyAppRootDirectory}\ShareX.ScreenCaptureLib\Stickers\*"; DestDir: {ap Source: "puush"; DestDir: {app}; Check: IsPuushMode [Icons] -Name: "{group}\{#MyAppName}"; Filename: "{app}\{#MyAppFilename}"; WorkingDir: "{app}" +Name: "{group}\{#MyAppName}"; Filename: "{app}\{#MyAppFileName}"; WorkingDir: "{app}" Name: "{group}\{cm:UninstallProgram,{#MyAppName}}"; Filename: "{uninstallexe}"; WorkingDir: "{app}" -Name: "{userdesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppFilename}"; WorkingDir: "{app}"; Tasks: CreateDesktopIcon -Name: "{usersendto}\{#MyAppName}"; Filename: "{app}\{#MyAppFilename}"; WorkingDir: "{app}"; Tasks: CreateSendToIcon -Name: "{userstartup}\{#MyAppName}"; Filename: "{app}\{#MyAppFilename}"; WorkingDir: "{app}"; Parameters: "-silent"; Tasks: CreateStartupIcon +Name: "{userdesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppFileName}"; WorkingDir: "{app}"; Tasks: CreateDesktopIcon +Name: "{usersendto}\{#MyAppName}"; Filename: "{app}\{#MyAppFileName}"; WorkingDir: "{app}"; Tasks: CreateSendToIcon +Name: "{userstartup}\{#MyAppName}"; Filename: "{app}\{#MyAppFileName}"; WorkingDir: "{app}"; Parameters: "-silent"; Tasks: CreateStartupIcon [Run] -Filename: "{app}\{#MyAppFilename}"; Description: "{cm:LaunchProgram,{#MyAppName}}"; Flags: nowait postinstall; Check: not IsNoRun +Filename: "{app}\{#MyAppFileName}"; Description: "{cm:LaunchProgram,{#MyAppName}}"; Flags: nowait postinstall; Check: not IsNoRun [Registry] Root: "HKCU"; Subkey: "Software\Classes\*\shell\{#MyAppName}"; ValueType: string; ValueData: "Upload with {#MyAppName}"; Tasks: CreateContextMenuButton -Root: "HKCU"; Subkey: "Software\Classes\*\shell\{#MyAppName}"; ValueType: string; ValueName: "Icon"; ValueData: """{app}\{#MyAppFilename}"",0"; Tasks: CreateContextMenuButton -Root: "HKCU"; Subkey: "Software\Classes\*\shell\{#MyAppName}\command"; ValueType: string; ValueData: """{app}\{#MyAppFilename}"" ""%1"""; Tasks: CreateContextMenuButton +Root: "HKCU"; Subkey: "Software\Classes\*\shell\{#MyAppName}"; ValueType: string; ValueName: "Icon"; ValueData: """{app}\{#MyAppFileName}"",0"; Tasks: CreateContextMenuButton +Root: "HKCU"; Subkey: "Software\Classes\*\shell\{#MyAppName}\command"; ValueType: string; ValueData: """{app}\{#MyAppFileName}"" ""%1"""; Tasks: CreateContextMenuButton Root: "HKCU"; Subkey: "Software\Classes\Directory\shell\{#MyAppName}"; ValueType: string; ValueData: "Upload with {#MyAppName}"; Tasks: CreateContextMenuButton -Root: "HKCU"; Subkey: "Software\Classes\Directory\shell\{#MyAppName}"; ValueType: string; ValueName: "Icon"; ValueData: """{app}\{#MyAppFilename}"",0"; Tasks: CreateContextMenuButton -Root: "HKCU"; Subkey: "Software\Classes\Directory\shell\{#MyAppName}\command"; ValueType: string; ValueData: """{app}\{#MyAppFilename}"" ""%1"""; Tasks: CreateContextMenuButton +Root: "HKCU"; Subkey: "Software\Classes\Directory\shell\{#MyAppName}"; ValueType: string; ValueName: "Icon"; ValueData: """{app}\{#MyAppFileName}"",0"; Tasks: CreateContextMenuButton +Root: "HKCU"; Subkey: "Software\Classes\Directory\shell\{#MyAppName}\command"; ValueType: string; ValueData: """{app}\{#MyAppFileName}"" ""%1"""; Tasks: CreateContextMenuButton Root: "HKCU"; Subkey: "Software\Classes\*\shell\{#MyAppName}"; Flags: dontcreatekey uninsdeletekey Root: "HKCU"; Subkey: "Software\Classes\Directory\shell\{#MyAppName}"; Flags: dontcreatekey uninsdeletekey Root: "HKCU"; Subkey: "Software\Classes\.sxcu"; Flags: dontcreatekey uninsdeletekey @@ -144,7 +134,7 @@ begin begin if MsgBox('Uninstall has detected that {#MyAppName} is currently running.' + #13#10#13#10 + 'Would you like to close it?', mbError, MB_YESNO) = IDYES then begin - Exec('taskkill.exe', '/f /im {#MyAppFilename}', '', SW_HIDE, ewWaitUntilTerminated, ErrorCode); + Exec('taskkill.exe', '/f /im {#MyAppFileName}', '', SW_HIDE, ewWaitUntilTerminated, ErrorCode); end else begin diff --git a/ShareX.Setup/InnoSetup/WizardImageFile.bmp b/ShareX.Setup/InnoSetup/WizardImageFile.bmp deleted file mode 100644 index c3e5f5c4f35d9c8eb38ddc0b5848d41ca017542d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 154542 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