Установщик NSIS не останавливается после установки

#nsis

#nsis

Вопрос:

Мой пользовательский установщик NSIS не останавливается после установки программы. Однако установка прошла успешно. Установщик NSIS запускается и потребляет много ресурсов процессора.

Ниже прилагается .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 "..releasePaperBuilder-Setup.exe"
!define MAIN_APP_EXE "PaperBuilder.bat"
!define INSTALL_TYPE "SetShellVarContext current"
!define REG_ROOT "HKCU"
!define REG_APP_PATH "SoftwareMicrosoftWindowsCurrentVersionApp Paths${MAIN_APP_EXE}"
!define UNINSTALL_PATH "SoftwareMicrosoftWindowsCurrentVersionUninstall${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 "$PROGRAMFILES64PaperBuilder"

######################################################################

!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 "$INSTDIRbinuninstall.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_FolderUninstall ${APP_NAME}.lnk" "$INSTDIRbinuninstall.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 "$SMPROGRAMSPaperBuilder"
CreateShortCut "$SMPROGRAMSPaperBuilder${APP_NAME}.lnk" "$INSTDIR${MAIN_APP_EXE}"
CreateShortCut "$SMPROGRAMSPaperBuilderUninstall ${APP_NAME}.lnk" "$INSTDIRbinuninstall.exe"

!ifdef WEB_SITE
WriteIniStr "$INSTDIR${APP_NAME} website.url" "InternetShortcut" "URL" "${WEB_SITE}"
CreateShortCut "$SMPROGRAMSPaperBuilder${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" "$INSTDIRbinuninstall.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 "$INSTDIRprereqpandoc.msi"'

SectionEnd

######################################################################

Section Uninstall

${GetParent} $INSTDIR $R0
Var /GLOBAL ROOT
StrCpy $ROOT $R0

Delete "$INSTDIRbinuninstall.exe"

Delete "$INSTDIR..default*"
RMDir "$INSTDIR..default"

ExecWait '"msiexec" /i "$ROOTprereqpandoc.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_FolderUninstall ${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 "$SMPROGRAMSPaperBuilder${APP_NAME}.lnk"
Delete "$SMPROGRAMSPaperBuilderUninstall ${APP_NAME}.lnk"
!ifdef WEB_SITE
Delete "$SMPROGRAMSPaperBuilder${APP_NAME} Website.lnk"
!endif
RMDir "$SMPROGRAMSPaperBuilder"
!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

Теперь, похоже, он работает нормально. Я что-то пропустил?

Комментарии:

1. Версия NSIS? Произойдет ли это, если вы удалите все вызовы EnVar?

2. Спасибо за комментарий, но теперь, похоже, он отлично работает с EnVar