mirror of
https://github.com/zontreck/NBTEditor
synced 2024-11-21 13:48:56 -07:00
Ensure bin path gets added to path on windows
This commit is contained in:
parent
5e647f6f32
commit
495d750f6d
1 changed files with 49 additions and 1 deletions
50
wininst.iss
50
wininst.iss
|
@ -10,6 +10,51 @@
|
||||||
#define MyAppAssocExt ".nbt"
|
#define MyAppAssocExt ".nbt"
|
||||||
#define MyAppAssocKey StringChange(MyAppAssocName, " ", "") + MyAppAssocExt
|
#define MyAppAssocKey StringChange(MyAppAssocName, " ", "") + MyAppAssocExt
|
||||||
|
|
||||||
|
|
||||||
|
[Code]
|
||||||
|
procedure UpdatePathWithAppBin();
|
||||||
|
var
|
||||||
|
PathVar: string;
|
||||||
|
BinPath: string;
|
||||||
|
begin
|
||||||
|
// Retrieve current PATH environment variable
|
||||||
|
PathVar := GetEnv('PATH');
|
||||||
|
|
||||||
|
// Construct the full path to the bin directory
|
||||||
|
BinPath := ExpandConstant('{app}\bin');
|
||||||
|
|
||||||
|
// Check if the bin directory is not already in PATH
|
||||||
|
if Pos(BinPath, PathVar) = 0 then
|
||||||
|
begin
|
||||||
|
// Append bin directory to PATH
|
||||||
|
if PathVar <> '' then
|
||||||
|
PathVar := PathVar + ';';
|
||||||
|
PathVar := PathVar + BinPath;
|
||||||
|
|
||||||
|
// Update the PATH environment variable
|
||||||
|
SetEnv('PATH', PathVar);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
procedure RemovePathWithAppBin();
|
||||||
|
var
|
||||||
|
PathVar: string;
|
||||||
|
BinPath: string;
|
||||||
|
begin
|
||||||
|
// Retrieve current PATH environment variable
|
||||||
|
PathVar := GetEnv('PATH');
|
||||||
|
|
||||||
|
// Construct the full path to the bin directory
|
||||||
|
BinPath := ExpandConstant('{app}\bin');
|
||||||
|
|
||||||
|
// Remove bin directory from PATH
|
||||||
|
PathVar := StringReplace(PathVar, BinPath + ';', '', [rfReplaceAll, rfIgnoreCase]);
|
||||||
|
PathVar := StringReplace(PathVar, BinPath, '', [rfReplaceAll, rfIgnoreCase]);
|
||||||
|
|
||||||
|
// Update the PATH environment variable
|
||||||
|
SetEnv('PATH', PathVar);
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
[Setup]
|
[Setup]
|
||||||
; NOTE: The value of AppId uniquely identifies this application. Do not use the same AppId value in installers for other applications.
|
; NOTE: The value of AppId uniquely identifies this application. Do not use the same AppId value in installers for other applications.
|
||||||
; (To generate a new GUID, click Tools | Generate GUID inside the IDE.)
|
; (To generate a new GUID, click Tools | Generate GUID inside the IDE.)
|
||||||
|
@ -68,5 +113,8 @@ Name: "{autoprograms}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"
|
||||||
Name: "{autodesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: desktopicon
|
Name: "{autodesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: desktopicon
|
||||||
|
|
||||||
[Run]
|
[Run]
|
||||||
Filename: "{app}\{#MyAppExeName}"; Description: "{cm:LaunchProgram,{#StringChange(MyAppName, '&', '&&')}}"; Flags: nowait postinstall skipifsilent
|
Filename: "{app}\{#MyAppExeName}"; Description: "{cm:LaunchProgram,{#StringChange(MyAppName, '&', '&&')}}"; Flags: nowait postinstall skipifsilent; AfterInstall: UpdatePathWithAppBin
|
||||||
|
|
||||||
|
|
||||||
|
[UninstallRun]
|
||||||
|
Filename: "{code:RemovePathWithAppBin}"; Flags: runhidden
|
||||||
|
|
Loading…
Reference in a new issue