mirror of
https://gitee.com/myxzgzs/boyue_jnpf.git
synced 2025-08-16 03:02:42 +08:00
125 lines
2.8 KiB
NSIS
125 lines
2.8 KiB
NSIS
![]() |
Var newStartMenuLink
|
||
|
Var oldStartMenuLink
|
||
|
Var newDesktopLink
|
||
|
Var oldDesktopLink
|
||
|
Var oldShortcutName
|
||
|
Var oldMenuDirectory
|
||
|
|
||
|
!include "common.nsh"
|
||
|
!include "MUI2.nsh"
|
||
|
!include "multiUser.nsh"
|
||
|
!include "allowOnlyOneInstallerInstance.nsh"
|
||
|
|
||
|
!ifdef INSTALL_MODE_PER_ALL_USERS
|
||
|
!ifdef BUILD_UNINSTALLER
|
||
|
RequestExecutionLevel user
|
||
|
!else
|
||
|
RequestExecutionLevel admin
|
||
|
!endif
|
||
|
!else
|
||
|
RequestExecutionLevel user
|
||
|
!endif
|
||
|
|
||
|
!ifdef BUILD_UNINSTALLER
|
||
|
SilentInstall silent
|
||
|
!else
|
||
|
Var appExe
|
||
|
Var launchLink
|
||
|
!endif
|
||
|
|
||
|
!ifdef ONE_CLICK
|
||
|
!include "oneClick.nsh"
|
||
|
!else
|
||
|
!include "assistedInstaller.nsh"
|
||
|
!endif
|
||
|
|
||
|
!insertmacro addLangs
|
||
|
|
||
|
!ifmacrodef customHeader
|
||
|
!insertmacro customHeader
|
||
|
!endif
|
||
|
|
||
|
Function .onInit
|
||
|
Call setInstallSectionSpaceRequired
|
||
|
|
||
|
SetOutPath $INSTDIR
|
||
|
${LogSet} on
|
||
|
|
||
|
!ifmacrodef preInit
|
||
|
!insertmacro preInit
|
||
|
!endif
|
||
|
|
||
|
!ifdef DISPLAY_LANG_SELECTOR
|
||
|
!insertmacro MUI_LANGDLL_DISPLAY
|
||
|
!endif
|
||
|
|
||
|
!ifdef BUILD_UNINSTALLER
|
||
|
WriteUninstaller "${UNINSTALLER_OUT_FILE}"
|
||
|
!insertmacro quitSuccess
|
||
|
!else
|
||
|
!insertmacro check64BitAndSetRegView
|
||
|
|
||
|
!ifdef ONE_CLICK
|
||
|
!insertmacro ALLOW_ONLY_ONE_INSTALLER_INSTANCE
|
||
|
!else
|
||
|
${IfNot} ${UAC_IsInnerInstance}
|
||
|
!insertmacro ALLOW_ONLY_ONE_INSTALLER_INSTANCE
|
||
|
${EndIf}
|
||
|
!endif
|
||
|
|
||
|
!insertmacro initMultiUser
|
||
|
|
||
|
!ifmacrodef customInit
|
||
|
!insertmacro customInit
|
||
|
!endif
|
||
|
|
||
|
!ifmacrodef addLicenseFiles
|
||
|
InitPluginsDir
|
||
|
!insertmacro addLicenseFiles
|
||
|
!endif
|
||
|
!endif
|
||
|
FunctionEnd
|
||
|
|
||
|
!ifndef BUILD_UNINSTALLER
|
||
|
!include "installUtil.nsh"
|
||
|
!endif
|
||
|
|
||
|
Section "install" INSTALL_SECTION_ID
|
||
|
!ifndef BUILD_UNINSTALLER
|
||
|
# If we're running a silent upgrade of a per-machine installation, elevate so extracting the new app will succeed.
|
||
|
# For a non-silent install, the elevation will be triggered when the install mode is selected in the UI,
|
||
|
# but that won't be executed when silent.
|
||
|
!ifndef INSTALL_MODE_PER_ALL_USERS
|
||
|
!ifndef ONE_CLICK
|
||
|
${if} $hasPerMachineInstallation == "1" # set in onInit by initMultiUser
|
||
|
${andIf} ${Silent}
|
||
|
${ifNot} ${UAC_IsAdmin}
|
||
|
ShowWindow $HWNDPARENT ${SW_HIDE}
|
||
|
!insertmacro UAC_RunElevated
|
||
|
${Switch} $0
|
||
|
${Case} 0
|
||
|
${Break}
|
||
|
${Case} 1223 ;user aborted
|
||
|
${Break}
|
||
|
${Default}
|
||
|
MessageBox mb_IconStop|mb_TopMost|mb_SetForeground "Unable to elevate, error $0"
|
||
|
${Break}
|
||
|
${EndSwitch}
|
||
|
Quit
|
||
|
${else}
|
||
|
!insertmacro setInstallModePerAllUsers
|
||
|
${endIf}
|
||
|
${endIf}
|
||
|
!endif
|
||
|
!endif
|
||
|
!include "installSection.nsh"
|
||
|
!endif
|
||
|
SectionEnd
|
||
|
|
||
|
Function setInstallSectionSpaceRequired
|
||
|
!insertmacro setSpaceRequired ${INSTALL_SECTION_ID}
|
||
|
FunctionEnd
|
||
|
|
||
|
!ifdef BUILD_UNINSTALLER
|
||
|
!include "uninstaller.nsh"
|
||
|
!endif
|