!include "common.nsh"!include "extractAppPackage.nsh"# https://github.com/electron-userland/electron-builder/issues/3972#issuecomment-505171582CRCCheck offWindowIcon OffAutoCloseWindow TrueRequestExecutionLevel ${REQUEST_EXECUTION_LEVEL}Function .onInit!ifndef SPLASH_IMAGESetSilent silent!endif!insertmacro check64BitAndSetRegViewFunctionEndFunction .onGUIInitInitPluginsDir!ifdef SPLASH_IMAGEFile /oname=$PLUGINSDIR\splash.bmp "${SPLASH_IMAGE}"BgImage::SetBg $PLUGINSDIR\splash.bmpBgImage::Redraw!endifFunctionEndSection!ifdef SPLASH_IMAGEHideWindow!endifStrCpy $INSTDIR "$PLUGINSDIR\app"!ifdef UNPACK_DIR_NAMEStrCpy $INSTDIR "$TEMP\${UNPACK_DIR_NAME}"!endifRMDir /r $INSTDIRSetOutPath $INSTDIR!ifdef APP_DIR_64!ifdef APP_DIR_ARM64!ifdef APP_DIR_32${if} ${IsNativeARM64}File /r "${APP_DIR_ARM64}\*.*"${elseif} ${RunningX64}File /r "${APP_DIR_64}\*.*"${else}File /r "${APP_DIR_32}\*.*"${endIf}!else${if} ${IsNativeARM64}File /r "${APP_DIR_ARM64}\*.*"${else}File /r "${APP_DIR_64}\*.*"{endIf}!endif!else!ifdef APP_DIR_32${if} ${RunningX64}File /r "${APP_DIR_64}\*.*"${else}File /r "${APP_DIR_32}\*.*"${endIf}!elseFile /r "${APP_DIR_64}\*.*"!endif!endif!else!ifdef APP_DIR_32File /r "${APP_DIR_32}\*.*"!else!insertmacro extractEmbeddedAppPackage!endif!endifSystem::Call 'Kernel32::SetEnvironmentVariable(t, t)i ("PORTABLE_EXECUTABLE_DIR", "$EXEDIR").r0'System::Call 'Kernel32::SetEnvironmentVariable(t, t)i ("PORTABLE_EXECUTABLE_FILE", "$EXEPATH").r0'System::Call 'Kernel32::SetEnvironmentVariable(t, t)i ("PORTABLE_EXECUTABLE_APP_FILENAME", "${APP_FILENAME}").r0'${StdUtils.GetAllParameters} $R0 0!ifdef SPLASH_IMAGEBgImage::Destroy!endifExecWait "$INSTDIR\${APP_EXECUTABLE_FILENAME} $R0" $0SetErrorLevel $0SetOutPath $EXEDIRRMDir /r $INSTDIRSectionEnd