NSIS 向path增添应用程序安装路径

NSIS 向path添加应用程序安装路径

系统路径path的注册表项
!define PRODUCT_UNINST_ROOT_KEY "HKLM"     //HKEY_LOCAL_MACHINE的简称

!define PATH_KEY "SYSTEM\CurrentControlSet\Control\Session Manager\Environment" //path对应的HKLM下的注册表项

 

在安装完成后字段区添加

Var vPath //新加,自定义变量,用于接受原path中的变量值
Section -Post
  WriteUninstaller "$INSTDIR\uninst.exe"
  WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayName" "$(^Name)"
  WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "UninstallString" "$INSTDIR\uninst.exe"
  WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayVersion" "${PRODUCT_VERSION}"
  WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "URLInfoAbout" "${PRODUCT_WEB_SITE}"
  WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "Publisher" "${PRODUCT_PUBLISHER}"


  ReadRegStr  $vPath ${PRODUCT_UNINST_ROOT_KEY} "${PATH_KEY}" "Path"   //取原值
  strcpy $vPath "$vPath+$INSTDIR"    //字符串连接喽
  WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PATH_KEY}" "Path" "$vPath"   //写新值

SectionEnd

 

结束,谢谢赏光!