mirror of
https://github.com/coreybutler/nvm-windows.git
synced 2025-09-02 02:44:36 +00:00
Updated build process.
This commit is contained in:
51
nvm.iss
51
nvm.iss
@@ -1,7 +1,7 @@
|
||||
#define MyAppName "NVM for Windows"
|
||||
#define MyAppShortName "nvm"
|
||||
#define MyAppLCShortName "nvm"
|
||||
#define MyAppVersion "1.1.10"
|
||||
#define MyAppVersion "1.1.11"
|
||||
#define MyAppPublisher "Ecor Ventures LLC"
|
||||
#define MyAppURL "https://github.com/coreybutler/nvm-windows"
|
||||
#define MyAppExeName "nvm.exe"
|
||||
@@ -89,7 +89,6 @@ var
|
||||
procedure TakeControl(np: string; nv: string);
|
||||
var
|
||||
path: string;
|
||||
ResultCode: integer;
|
||||
begin
|
||||
// Move the existing node.js installation directory to the nvm root & update the path
|
||||
RenameFile(np,ExpandConstant('{app}')+'\'+nv);
|
||||
@@ -104,7 +103,15 @@ begin
|
||||
|
||||
RegWriteExpandStringValue(HKEY_LOCAL_MACHINE, 'SYSTEM\CurrentControlSet\Control\Session Manager\Environment', 'Path', path);
|
||||
|
||||
ExecAsOriginalUser('wscript', 'setuserenv.vbs', ExpandConstant('{app}'), SW_HIDE, ewWaitUntilTerminated, ResultCode);
|
||||
RegQueryStringValue(HKEY_CURRENT_USER,
|
||||
'Environment',
|
||||
'Path', path);
|
||||
|
||||
StringChangeEx(path,np+'\','',True);
|
||||
StringChangeEx(path,np,'',True);
|
||||
StringChangeEx(path,np+';;',';',True);
|
||||
|
||||
RegWriteExpandStringValue(HKEY_CURRENT_USER, 'Environment', 'Path', path);
|
||||
|
||||
nodeInUse := ExpandConstant('{app}')+'\'+nv;
|
||||
|
||||
@@ -200,7 +207,6 @@ function InitializeUninstall(): Boolean;
|
||||
var
|
||||
path: string;
|
||||
nvm_symlink: string;
|
||||
ResultCode: integer;
|
||||
begin
|
||||
SuppressibleMsgBox('Removing NVM for Windows will remove the nvm command and all versions of node.js, including global npm modules.', mbInformation, MB_OK, IDOK);
|
||||
|
||||
@@ -217,8 +223,12 @@ begin
|
||||
RegDeleteValue(HKEY_LOCAL_MACHINE,
|
||||
'SYSTEM\CurrentControlSet\Control\Session Manager\Environment',
|
||||
'NVM_SYMLINK')
|
||||
ExecAsOriginalUser('REG', 'DELETE HKCU\Environment /F /V NVM_HOME /D', '', SW_HIDE, ewWaitUntilTerminated, ResultCode);
|
||||
ExecAsOriginalUser('REG', 'DELETE HKCU\Environment /F /V NVM_SYMLINK /D', '', SW_HIDE, ewWaitUntilTerminated, ResultCode);
|
||||
RegDeleteValue(HKEY_CURRENT_USER,
|
||||
'Environment',
|
||||
'NVM_HOME')
|
||||
RegDeleteValue(HKEY_CURRENT_USER,
|
||||
'Environment',
|
||||
'NVM_SYMLINK')
|
||||
|
||||
RegQueryStringValue(HKEY_LOCAL_MACHINE,
|
||||
'SYSTEM\CurrentControlSet\Control\Session Manager\Environment',
|
||||
@@ -230,7 +240,15 @@ begin
|
||||
|
||||
RegWriteExpandStringValue(HKEY_LOCAL_MACHINE, 'SYSTEM\CurrentControlSet\Control\Session Manager\Environment', 'Path', path);
|
||||
|
||||
ExecAsOriginalUser('wscript', 'unsetuserenv.vbs', ExpandConstant('{app}'), SW_HIDE, ewWaitUntilTerminated, ResultCode);
|
||||
RegQueryStringValue(HKEY_CURRENT_USER,
|
||||
'Environment',
|
||||
'Path', path);
|
||||
|
||||
StringChangeEx(path,'%NVM_HOME%','',True);
|
||||
StringChangeEx(path,'%NVM_SYMLINK%','',True);
|
||||
StringChangeEx(path,';;',';',True);
|
||||
|
||||
RegWriteExpandStringValue(HKEY_CURRENT_USER, 'Environment', 'Path', path);
|
||||
|
||||
Result := True;
|
||||
end;
|
||||
@@ -239,7 +257,6 @@ end;
|
||||
procedure CurStepChanged(CurStep: TSetupStep);
|
||||
var
|
||||
path: string;
|
||||
ResultCode: Integer;
|
||||
begin
|
||||
if CurStep = ssPostInstall then
|
||||
begin
|
||||
@@ -248,8 +265,8 @@ begin
|
||||
// Add Registry settings
|
||||
RegWriteExpandStringValue(HKEY_LOCAL_MACHINE, 'SYSTEM\CurrentControlSet\Control\Session Manager\Environment', 'NVM_HOME', ExpandConstant('{app}'));
|
||||
RegWriteExpandStringValue(HKEY_LOCAL_MACHINE, 'SYSTEM\CurrentControlSet\Control\Session Manager\Environment', 'NVM_SYMLINK', SymlinkPage.Values[0]);
|
||||
ExecAsOriginalUser('REG', 'ADD HKCU\Environment /F /V NVM_HOME /D "' + ExpandConstant('{app}') + '"', '', SW_HIDE, ewWaitUntilTerminated, ResultCode);
|
||||
ExecAsOriginalUser('REG', 'ADD HKCU\Environment /F /V NVM_SYMLINK /D "' + SymlinkPage.Values[0] + '"', '', SW_HIDE, ewWaitUntilTerminated, ResultCode);
|
||||
RegWriteExpandStringValue(HKEY_CURRENT_USER, 'Environment', 'NVM_HOME', ExpandConstant('{app}'));
|
||||
RegWriteExpandStringValue(HKEY_CURRENT_USER, 'Environment', 'NVM_SYMLINK', SymlinkPage.Values[0]);
|
||||
|
||||
RegWriteStringValue(HKEY_LOCAL_MACHINE, 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{#MyAppId}_is1', 'DisplayVersion', '{#MyAppVersion}');
|
||||
|
||||
@@ -267,7 +284,19 @@ begin
|
||||
StringChangeEx(path,';;',';',True);
|
||||
RegWriteExpandStringValue(HKEY_LOCAL_MACHINE, 'SYSTEM\CurrentControlSet\Control\Session Manager\Environment', 'Path', path);
|
||||
end;
|
||||
ExecAsOriginalUser('wscript', 'setuserenv.vbs', ExpandConstant('{app}'), SW_HIDE, ewWaitUntilTerminated, ResultCode);
|
||||
RegQueryStringValue(HKEY_CURRENT_USER,
|
||||
'Environment',
|
||||
'Path', path);
|
||||
if Pos('%NVM_HOME%',path) = 0 then begin
|
||||
path := path+';%NVM_HOME%';
|
||||
StringChangeEx(path,';;',';',True);
|
||||
RegWriteExpandStringValue(HKEY_CURRENT_USER, 'Environment', 'Path', path);
|
||||
end;
|
||||
if Pos('%NVM_SYMLINK%',path) = 0 then begin
|
||||
path := path+';%NVM_SYMLINK%';
|
||||
StringChangeEx(path,';;',';',True);
|
||||
RegWriteExpandStringValue(HKEY_CURRENT_USER, 'Environment', 'Path', path);
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
|
||||
|
Reference in New Issue
Block a user