92 lines
2.5 KiB
Plaintext
92 lines
2.5 KiB
Plaintext
!include x64.nsh
|
|
!include WinVer.nsh
|
|
|
|
BrandingText "${PRODUCT_NAME} ${VERSION}"
|
|
ShowInstDetails nevershow
|
|
SpaceTexts none
|
|
!ifdef BUILD_UNINSTALLER
|
|
ShowUninstDetails nevershow
|
|
!endif
|
|
FileBufSize 64
|
|
Name "${PRODUCT_NAME}"
|
|
|
|
!define APP_EXECUTABLE_FILENAME "${PRODUCT_FILENAME}.exe"
|
|
!define UNINSTALL_FILENAME "Uninstall ${PRODUCT_FILENAME}.exe"
|
|
|
|
!macro check64BitAndSetRegView
|
|
# https://github.com/electron-userland/electron-builder/issues/2420
|
|
${If} ${IsWin2000}
|
|
${OrIf} ${IsWinME}
|
|
${OrIf} ${IsWinXP}
|
|
${OrIf} ${IsWinVista}
|
|
MessageBox MB_OK "$(win7Required)"
|
|
Quit
|
|
${EndIf}
|
|
|
|
!ifdef APP_64
|
|
${If} ${RunningX64}
|
|
SetRegView 64
|
|
${Else}
|
|
!ifndef APP_32
|
|
MessageBox MB_OK|MB_ICONEXCLAMATION "$(x64WinRequired)"
|
|
Quit
|
|
!endif
|
|
${EndIf}
|
|
!endif
|
|
!macroend
|
|
|
|
# avoid exit code 2
|
|
!macro quitSuccess
|
|
SetErrorLevel 0
|
|
Quit
|
|
!macroend
|
|
|
|
!macro setLinkVars
|
|
# old desktop shortcut (could exist or not since the user might has selected to delete it)
|
|
ReadRegStr $oldShortcutName SHELL_CONTEXT "${INSTALL_REGISTRY_KEY}" ShortcutName
|
|
${if} $oldShortcutName == ""
|
|
StrCpy $oldShortcutName "${PRODUCT_FILENAME}"
|
|
${endIf}
|
|
StrCpy $oldDesktopLink "$DESKTOP\$oldShortcutName.lnk"
|
|
|
|
# new desktop shortcut (will be created/renamed in case of a fresh installation or if the user haven't deleted the initial one)
|
|
StrCpy $newDesktopLink "$DESKTOP\${SHORTCUT_NAME}.lnk"
|
|
|
|
ReadRegStr $oldMenuDirectory SHELL_CONTEXT "${INSTALL_REGISTRY_KEY}" MenuDirectory
|
|
${if} $oldMenuDirectory == ""
|
|
StrCpy $oldStartMenuLink "$SMPROGRAMS\$oldShortcutName.lnk"
|
|
${else}
|
|
StrCpy $oldStartMenuLink "$SMPROGRAMS\$oldMenuDirectory\$oldShortcutName.lnk"
|
|
${endIf}
|
|
|
|
# new menu shortcut (will be created/renamed in case of a fresh installation or if the user haven't deleted the initial one)
|
|
!ifdef MENU_FILENAME
|
|
StrCpy $newStartMenuLink "$SMPROGRAMS\${MENU_FILENAME}\${SHORTCUT_NAME}.lnk"
|
|
!else
|
|
StrCpy $newStartMenuLink "$SMPROGRAMS\${SHORTCUT_NAME}.lnk"
|
|
!endif
|
|
!macroend
|
|
|
|
!macro skipPageIfUpdated
|
|
!define UniqueID ${__LINE__}
|
|
|
|
Function skipPageIfUpdated_${UniqueID}
|
|
${if} ${isUpdated}
|
|
Abort
|
|
${endif}
|
|
FunctionEnd
|
|
|
|
!define MUI_PAGE_CUSTOMFUNCTION_PRE skipPageIfUpdated_${UniqueID}
|
|
!undef UniqueID
|
|
!macroend
|
|
|
|
!macro StartApp
|
|
Var /GLOBAL startAppArgs
|
|
${if} ${isUpdated}
|
|
StrCpy $startAppArgs "--updated"
|
|
${else}
|
|
StrCpy $startAppArgs ""
|
|
${endif}
|
|
|
|
${StdUtils.ExecShellAsUser} $0 "$launchLink" "open" "$startAppArgs"
|
|
!macroend |