Improved: Updated to Visual Studio 2019 and Qt 5.15.2. Running Equalizer APO requires Universal CRT now, which means that Windows versions before 10 may need additional Windows updates or the Visual C++ Redistributable for Visual Studio 2015 - 2019 needs to be installed (installer provides assistance).

This commit is contained in:
jthedering committed 2021-06-08 19:04:18 +00:00
1 parent 3d51af7364
commit c692f0639b
94 files changed
+362 -184

No files matched your search

+68 -17
View File
@@ -1,6 +1,11 @@
!include "LogicLib.nsh"
!include "MUI2.nsh"
!include "NSISpcre.nsh"
!include "WinVer.nsh"
;Use ANSI because NSISpcre's Unicode version is less optimized
Unicode false
ManifestDPIAware true
;Use more efficient compression
SetCompressor /SOLID lzma
@@ -32,12 +37,14 @@ SetCompressor /SOLID lzma
Var StartMenuFolder
Var OldStartMenuFolder
Var OLDINSTDIR
;--------------------------------
;Interface Settings
!define MUI_ABORTWARNING
!define MUI_COMPONENTSPAGE_NODESC
!define MUI_WELCOMEPAGE_TITLE_3LINES
;--------------------------------
;Pages
@@ -71,29 +78,47 @@ SetCompressor /SOLID lzma
;Macros
!macro RenameAndDelete path
IfFileExists "${path}" 0 +3
${If} ${FileExists} "${path}"
Rename "${path}" "${path}.old"
Delete /REBOOTOK "${path}.old"
${EndIf}
!macroend
LangString UCRTError ${LANG_ENGLISH} "Your Windows installation is missing required updates to use this program. Please install remaining Windows updates or the Visual C++ Redistributable for Visual Studio 2015 - 2019.$\n$\nDo you want to download the Visual C++ Redistributable now?"
LangString UCRTError ${LANG_GERMAN} "Ihrer Windows-Installation fehlen benötigte Updates, um dieses Programm zu verwenden. Bitte installieren Sie ausstehende Windows-Updates oder das Visual C++ Redistributable für Visual Studio 2015 - 2019.$\n$\nMöchten Sie jetzt das Visual C++ Redistributable herunterladen?"
;--------------------------------
;Functions
Function .onInit
SetRegView 64
!if ${LIBPATH} == "lib64"
SetRegView 64
!endif
;Get installation folder from registry if available
ReadRegStr $INSTDIR HKLM ${REGPATH} "InstallPath"
;Use default installation folder otherwise
StrCmp $INSTDIR "" 0 +2
${If} $INSTDIR == ""
StrCpy $INSTDIR "$PROGRAMFILES64\EqualizerAPO"
${EndIf}
!insertmacro MUI_STARTMENU_GETFOLDER Application $StartMenuFolder
;Try to replace version number in start menu folder
${REReplace} $0 "Equalizer APO [0-9]+\.[0-9]+(?:\.[0-9]+)?" "$StartMenuFolder" "Equalizer APO ${VERSION}" 1
StrCmp $0 "" +2 0
${If} $0 != ""
StrCpy $StartMenuFolder "$0"
${EndIf}
Call initCheck
${IfNot} ${AtLeastWin10}
System::Call 'KERNEL32::LoadLibrary(t "ucrtbase.dll")p.r0'
${If} $0 P= 0
MessageBox MB_YESNO|MB_ICONSTOP $(UCRTError) IDNO skipDownload
ExecShell "open" "${VCREDIST_URL}"
skipDownload:
Abort
${EndIf}
${EndIf}
FunctionEnd
;--------------------------------
@@ -109,13 +134,17 @@ Section "Install" SecInstall
;Rename before delete as these files may be in use
!insertmacro RenameAndDelete "$INSTDIR\EqualizerAPO.dll"
!insertmacro RenameAndDelete "$INSTDIR\libsndfile-1.dll"
!insertmacro RenameAndDelete "$INSTDIR\libfftw3f-3.dll"
!insertmacro RenameAndDelete "$INSTDIR\libsndfile-1.dll"
!insertmacro RenameAndDelete "$INSTDIR\msvcp100.dll"
!insertmacro RenameAndDelete "$INSTDIR\msvcr100.dll"
!insertmacro RenameAndDelete "$INSTDIR\msvcp120.dll"
!insertmacro RenameAndDelete "$INSTDIR\msvcr120.dll"
!insertmacro RenameAndDelete "$INSTDIR\msvcp140.dll"
!insertmacro RenameAndDelete "$INSTDIR\msvcp140_1.dll"
!insertmacro RenameAndDelete "$INSTDIR\VoicemeeterClient.exe"
!insertmacro RenameAndDelete "$INSTDIR\vcruntime140.dll"
!insertmacro RenameAndDelete "$INSTDIR\vcruntime140_1.dll"
File "${BINPATH}\EqualizerAPO.dll"
File "${BINPATH}\Configurator.exe"
@@ -124,22 +153,28 @@ Section "Install" SecInstall
File "${BINPATH_EDITOR}\Editor.exe"
File "${LIBPATH}\libsndfile-1.dll"
File "${LIBPATH}\libfftw3f-3.dll"
File "${LIBPATH}\msvcp120.dll"
File "${LIBPATH}\msvcr120.dll"
File "${LIBPATH}\libsndfile-1.dll"
File "${LIBPATH}\msvcp140.dll"
File "${LIBPATH}\msvcp140_1.dll"
File "${LIBPATH}\Qt5Core.dll"
File "${LIBPATH}\Qt5Gui.dll"
File "${LIBPATH}\Qt5Widgets.dll"
File "${LIBPATH}\vcruntime140.dll"
!if ${LIBPATH} == "lib64"
File "${LIBPATH}\vcruntime140_1.dll"
!endif
CreateDirectory "$INSTDIR\qt"
CreateDirectory "$INSTDIR\qt\platforms"
CreateDirectory "$INSTDIR\qt\imageformats"
CreateDirectory "$INSTDIR\qt\platforms"
CreateDirectory "$INSTDIR\qt\styles"
File /oname=qt\platforms\qwindows.dll "${LIBPATH}\qt\platforms\qwindows.dll"
File /oname=qt\imageformats\qgif.dll "${LIBPATH}\qt\imageformats\qgif.dll"
File /oname=qt\imageformats\qico.dll "${LIBPATH}\qt\imageformats\qico.dll"
File /oname=qt\imageformats\qjpeg.dll "${LIBPATH}\qt\imageformats\qjpeg.dll"
File /oname=qt\platforms\qwindows.dll "${LIBPATH}\qt\platforms\qwindows.dll"
File /oname=qt\styles\qwindowsvistastyle.dll "${LIBPATH}\qt\styles\qwindowsvistastyle.dll"
File "Configuration tutorial (online).url"
File "Configuration reference (online).url"
@@ -159,10 +194,21 @@ Section "Install" SecInstall
;Grant write access to the config directory for all users
AccessControl::GrantOnFile "$INSTDIR\config" "(S-1-5-32-545)" "FullAccess"
ReadRegStr $OLDINSTDIR HKLM ${REGPATH} "InstallPath"
WriteRegStr HKLM ${REGPATH} "InstallPath" "$INSTDIR"
WriteRegStr HKLM ${REGPATH} "ConfigPath" "$INSTDIR\config"
WriteRegStr HKLM ${REGPATH} "EnableTrace" "false"
;Write ConfigPath if non-existing or if InstallPath has changed
ReadRegStr $0 HKLM ${REGPATH} "ConfigPath"
${If} $0 == ""
${OrIf} $INSTDIR != $OLDINSTDIR
WriteRegStr HKLM ${REGPATH} "ConfigPath" "$INSTDIR\config"
${EndIf}
ReadRegStr $0 HKLM ${REGPATH} "EnableTrace"
${If} $0 == ""
WriteRegStr HKLM ${REGPATH} "EnableTrace" "false"
${EndIf}
WriteUninstaller "$INSTDIR\Uninstall.exe"
!insertmacro MUI_STARTMENU_WRITE_BEGIN Application
@@ -205,7 +251,9 @@ Section /o un.$(SecRemoveName)
SectionEnd
Section "-un.Uninstall"
SetRegView 64
!if ${LIBPATH} == "lib64"
SetRegView 64
!endif
ExecWait '"$INSTDIR\Configurator.exe" /u'
@@ -222,14 +270,17 @@ Section "-un.Uninstall"
RMDir /r "$INSTDIR\qt"
!if ${LIBPATH} == "lib64"
Delete /REBOOTOK "$INSTDIR\vcruntime140_1.dll"
!endif
Delete /REBOOTOK "$INSTDIR\vcruntime140.dll"
Delete "$INSTDIR\Qt5Widgets.dll"
Delete "$INSTDIR\Qt5Gui.dll"
Delete "$INSTDIR\Qt5Core.dll"
Delete /REBOOTOK "$INSTDIR\msvcr120.dll"
Delete /REBOOTOK "$INSTDIR\msvcp120.dll"
Delete /REBOOTOK "$INSTDIR\libfftw3f-3.dll"
Delete /REBOOTOK "$INSTDIR\msvcp140_1.dll"
Delete /REBOOTOK "$INSTDIR\msvcp140.dll"
Delete /REBOOTOK "$INSTDIR\libsndfile-1.dll"
Delete /REBOOTOK "$INSTDIR\libfftw3f-3.dll"
Delete "$INSTDIR\Editor.exe"
Delete "$INSTDIR\VoicemeeterClient.exe"
+2 -1
View File
@@ -1,7 +1,8 @@
!define BINPATH "..\Release"
!define BINPATH_EDITOR "..\build-Editor-Desktop_Qt_5_7_MSVC2013_32bit-Release\release"
!define BINPATH_EDITOR "..\build-Editor-Desktop_Qt_5_15_2_MSVC2019_32bit\release"
!define LIBPATH "lib32"
!define VCREDIST_URL "https://aka.ms/vs/16/release/vc_redist.x86.exe"
!include "Setup.nsi"
+2 -1
View File
@@ -1,7 +1,8 @@
!define BINPATH "..\x64\Release"
!define BINPATH_EDITOR "..\build-Editor-Desktop_Qt_5_7_MSVC2013_64bit-Release\release"
!define BINPATH_EDITOR "..\build-Editor-Desktop_Qt_5_15_2_MSVC2019_64bit\release"
!define LIBPATH "lib64"
!define VCREDIST_URL "https://aka.ms/vs/16/release/vc_redist.x64.exe"
!include "Setup.nsi"
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.