From 6db2c3aa075c6e2f5bf1187662eca5f95f0843fb Mon Sep 17 00:00:00 2001 From: Michael D Date: Mon, 22 Jan 2024 07:13:23 +0800 Subject: [PATCH] Inno Setup Code to choose pf or userpf --- ShareX.Setup/InnoSetup/ShareX-setup.iss | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/ShareX.Setup/InnoSetup/ShareX-setup.iss b/ShareX.Setup/InnoSetup/ShareX-setup.iss index e984b95b8..bf4e5c000 100644 --- a/ShareX.Setup/InnoSetup/ShareX-setup.iss +++ b/ShareX.Setup/InnoSetup/ShareX-setup.iss @@ -102,8 +102,23 @@ Root: "HKCU"; Subkey: "Software\Classes\SystemFileAssociations\image\shell\Share #include "CodeDependencies.iss" [Code] -procedure InitializeWizard; +function IsAdmin(): Boolean; begin + Result := (IsAdminLoggedOn or IsPowerUserLoggedOn); +end; + +procedure InitializeWizard(); +var + installDir: String; +begin + if IsAdmin() then + installDir := ExpandConstant('{pf}\{#MyAppName}') + else + installDir := ExpandConstant('{userpf}\{#MyAppName}'); + + ForceDirectories(installDir); + WizardForm.DirEdit.Text := installDir; + Dependency_InitializeWizard; end;