如何解决NSIS安装程序在安装后不会停止
安装该程序后,我的自定义NSIS安装程序不会停止运行。但是,安装成功。 NSIS安装程序会运行并消耗大量cpu。
下面是.nsi
脚本
############################################################################################
# NSIS Installation Script created by NSIS Quick Setup Script Generator v1.09.18
# Entirely Edited with NullSoft Scriptable Installation System
# by Vlasis K. Barkas aka Red Wine red_wine@freemail.gr Sep 2006
############################################################################################
UNICODE True
!define APP_NAME "PaperBuilder"
!define COMP_NAME "IISER-M Students"
!define WEB_SITE "https://iiserm.github.io/PaperBuilder"
!define VERSION "00.01.00.00"
!define copYRIGHT ""
!define DESCRIPTION "Create beautiful Latex projects with Markdown"
!define INSTALLER_NAME "..\release\PaperBuilder-Setup.exe"
!define MAIN_APP_EXE "PaperBuilder.bat"
!define INSTALL_TYPE "SetShellVarContext current"
!define REG_ROOT "HKCU"
!define REG_APP_PATH "Software\Microsoft\Windows\CurrentVersion\App Paths\${MAIN_APP_EXE}"
!define UNINSTALL_PATH "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APP_NAME}"
######################################################################
VIProductVersion "${VERSION}"
VIAddVersionKey "ProductName" "${APP_NAME}"
VIAddVersionKey "CompanyName" "${COMP_NAME}"
VIAddVersionKey "Legalcopyright" "${copYRIGHT}"
VIAddVersionKey "FileDescription" "${DESCRIPTION}"
VIAddVersionKey "FiLeversion" "${VERSION}"
######################################################################
SetCompressor ZLIB
Name "${APP_NAME}"
Caption "${APP_NAME}"
OutFile "${INSTALLER_NAME}"
brandingText "${APP_NAME}"
XPStyle on
InstallDirRegKey "${REG_ROOT}" "${REG_APP_PATH}" ""
InstallDir "$PROGRAMFILES64\PaperBuilder"
######################################################################
!include "FileFunc.nsh"
!insertmacro GetParent
!include "MUI.nsh"
!define MUI_ABORTWARNING
!define MUI_UNABORTWARNING
!insertmacro MUI_PAGE_WELCOME
!ifdef LICENSE_TXT
!insertmacro MUI_PAGE_LICENSE "${LICENSE_TXT}"
!endif
!insertmacro MUI_PAGE_DIRECTORY
!ifdef REG_START_MENU
!define MUI_startmenuPAGE_NOdisABLE
!define MUI_startmenuPAGE_DEFAULTFOLDER "PaperBuilder"
!define MUI_startmenuPAGE_REGISTRY_ROOT "${REG_ROOT}"
!define MUI_startmenuPAGE_REGISTRY_KEY "${UNINSTALL_PATH}"
!define MUI_startmenuPAGE_REGISTRY_VALUENAME "${REG_START_MENU}"
!insertmacro MUI_PAGE_startmenu Application $SM_Folder
!endif
!insertmacro MUI_PAGE_INSTFILES
!define MUI_FINISHPAGE_RUN "$INSTDIR\${MAIN_APP_EXE}"
!insertmacro MUI_PAGE_FINISH
!insertmacro MUI_UNPAGE_CONFIRM
!insertmacro MUI_UNPAGE_INSTFILES
!insertmacro MUI_UNPAGE_FINISH
!insertmacro MUI_LANGUAGE "English"
######################################################################
Section -MainProgram
${INSTALL_TYPE}
Setoverwrite ifnewer
SetoutPath "$INSTDIR"
File /r "..\build\*"
SectionEnd
######################################################################
Section -Icons_Reg
SetoutPath "$INSTDIR"
WriteUninstaller "$INSTDIR\bin\uninstall.exe"
EnVar::SetHKLM
EnVar::AddValueEx "Path" $INSTDIR
Pop $0
DetailPrint "EnVar::AddValue returned=|$0|"
!ifdef REG_START_MENU
!insertmacro MUI_startmenu_WRITE_BEGIN Application
CreateDirectory "$SMPROGRAMS\$SM_Folder"
CreateShortCut "$SMPROGRAMS\$SM_Folder\${APP_NAME}.lnk" "$INSTDIR\${MAIN_APP_EXE}"
CreateShortCut "$SMPROGRAMS\$SM_Folder\Uninstall ${APP_NAME}.lnk" "$INSTDIR\bin\uninstall.exe"
!ifdef WEB_SITE
WriteIniStr "$INSTDIR\${APP_NAME} website.url" "InternetShortcut" "URL" "${WEB_SITE}"
CreateShortCut "$SMPROGRAMS\$SM_Folder\${APP_NAME} Website.lnk" "$INSTDIR\${APP_NAME} website.url"
!endif
!insertmacro MUI_startmenu_WRITE_END
!endif
!ifndef REG_START_MENU
CreateDirectory "$SMPROGRAMS\PaperBuilder"
CreateShortCut "$SMPROGRAMS\PaperBuilder\${APP_NAME}.lnk" "$INSTDIR\${MAIN_APP_EXE}"
CreateShortCut "$SMPROGRAMS\PaperBuilder\Uninstall ${APP_NAME}.lnk" "$INSTDIR\bin\uninstall.exe"
!ifdef WEB_SITE
WriteIniStr "$INSTDIR\${APP_NAME} website.url" "InternetShortcut" "URL" "${WEB_SITE}"
CreateShortCut "$SMPROGRAMS\PaperBuilder\${APP_NAME} Website.lnk" "$INSTDIR\${APP_NAME} website.url"
!endif
!endif
WriteRegStr ${REG_ROOT} "${REG_APP_PATH}" "" "$INSTDIR\${MAIN_APP_EXE}"
WriteRegStr ${REG_ROOT} "${UNINSTALL_PATH}" "displayName" "${APP_NAME}"
WriteRegStr ${REG_ROOT} "${UNINSTALL_PATH}" "UninstallString" "$INSTDIR\bin\uninstall.exe"
WriteRegStr ${REG_ROOT} "${UNINSTALL_PATH}" "displayIcon" "$INSTDIR\${MAIN_APP_EXE}"
WriteRegStr ${REG_ROOT} "${UNINSTALL_PATH}" "displayVersion" "${VERSION}"
WriteRegStr ${REG_ROOT} "${UNINSTALL_PATH}" "Publisher" "${COMP_NAME}"
!ifdef WEB_SITE
WriteRegStr ${REG_ROOT} "${UNINSTALL_PATH}" "URLInfoAbout" "${WEB_SITE}"
!endif
ExecWait '"msiexec" /i "$INSTDIR\prereq\pandoc.msi"'
SectionEnd
######################################################################
Section Uninstall
${GetParent} $INSTDIR $R0
Var /GLOBAL ROOT
Strcpy $ROOT $R0
Delete "$INSTDIR\bin\uninstall.exe"
Delete "$INSTDIR\..\default\*"
RMDir "$INSTDIR\..\default"
ExecWait '"msiexec" /i "$ROOT\prereq\pandoc.msi"'
Delete "$INSTDIR\..\prereq\*"
#RMDir "$INSTDIR\..\prereq"
Delete "$INSTDIR\..\bibliography.bib"
Delete "$INSTDIR\..\PaperBuilder website.url"
Delete "$INSTDIR\..\PaperBuilder.bat"
Delete "$INSTDIR\..\template.md"
RMDir /REBOOTOK /r $INSTDIR
RMDir "$INSTDIR\.."
!ifdef REG_START_MENU
!insertmacro MUI_startmenu_GETFOLDER "Application" $SM_Folder
Delete "$SMPROGRAMS\$SM_Folder\${APP_NAME}.lnk"
Delete "$SMPROGRAMS\$SM_Folder\Uninstall ${APP_NAME}.lnk"
!ifdef WEB_SITE
Delete "$SMPROGRAMS\$SM_Folder\${APP_NAME} Website.lnk"
!endif
RMDir "$SMPROGRAMS\$SM_Folder"
!endif
!ifndef REG_START_MENU
Delete "$SMPROGRAMS\PaperBuilder\${APP_NAME}.lnk"
Delete "$SMPROGRAMS\PaperBuilder\Uninstall ${APP_NAME}.lnk"
!ifdef WEB_SITE
Delete "$SMPROGRAMS\PaperBuilder\${APP_NAME} Website.lnk"
!endif
RMDir "$SMPROGRAMS\PaperBuilder"
!endif
DeleteRegKey ${REG_ROOT} "${REG_APP_PATH}"
DeleteRegKey ${REG_ROOT} "${UNINSTALL_PATH}"
SectionEnd
######################################################################
我的项目文件夹结构如下-
-root
|_ windows
| |_ build.nsi
|_ build
| |_ files...
|_ prereq
| |_ files
|_ release
编辑- NSIS版本-3.06.1
现在看来一切正常。有什么我想念的吗?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。