NSIS添加系統環境變量

; 清除錯誤標誌
ClearErrors

; 讀取環境變量 MyPath,如果環境變量不存在將返回空字符串並標誌錯誤
ReadRegStr $0 HKLM "SYSTEM\CurrentControlSet\Control\Session Manager\Environment" "MyPatha"

IfErrors ShowMessageBox NextStep

ShowMessageBox:
MessageBox MB_OK|MB_ICONINFORMATION "該環境變量不存在" /SD IDOK

NextStep:
WriteRegExpandStr HKLM "SYSTEM\CurrentControlSet\Control\Session Manager\Environment" "MyPath" "$0;$INSTDIR\Oracle\bin\"

; 刷新環境變量,需要引用 WinMessages 頭文件(!include "WinMessages.nsh")
SendMessage ${HWND_BROADCAST} ${WM_WININICHANGE} 0 "STR:Environment"

;-----------------------------------------------

;利用WordReplace函數從PATH中刪除設置oracle的環境變量 
;需要在文件頭引入相應的頭文件:!include "WordFunc.nsh"
ReadRegStr $R0 HKLM "SYSTEM\CurrentControlSet\Control\Session Manager\Environment" "Path"
${WordReplace} $R0 ";$INSTDIR\Oracle\bin\" "" "+" $R1
MessageBox MB_OK|MB_USERICON '$R0 - $INSTDIR - $R1 '
WriteRegExpandStr HKLM "SYSTEM\CurrentControlSet\Control\Session Manager\Environment" "Path" "$R1"

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章