X-Git-Url: http://git.indexdata.com/?p=yaz-moved-to-github.git;a=blobdiff_plain;f=win%2Fyaz.nsi;h=a01dcdd37826e1f1649870d6db8064f465057a09;hp=1a315063fd14a8036e8b8fddb76d90833b266f15;hb=1426a3da9b0390bb0d928a6ee56ebf5fa0ceb0ef;hpb=cd6fda1153b27b8f1df87110c93a51c53f0655ea diff --git a/win/yaz.nsi b/win/yaz.nsi index 1a31506..a01dcdd 100644 --- a/win/yaz.nsi +++ b/win/yaz.nsi @@ -5,12 +5,34 @@ !include EnvVarUpdate.nsh !include version.nsi -; !define VS_REDIST_EXE "vcredist_x86.exe" -; !define VS_REDIST_FULL "c:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\redist\1033\${VS_REDIST_EXE}" -; !define VS_REDIST_KEY "SOFTWARE\Microsoft\VisualStudio\12.0\VC\Runtimes\x86" - !include "MUI.nsh" +!define VS_REDIST_EXE vcredist_${VSARCH}.exe +!define VS_REDIST_FULL "c:\Program Files (x86)\Microsoft Visual Studio ${VSVER}.0\VC\redist\1033\${VS_REDIST_EXE}" + +; For example can be found with regedit: +; Microsoft Visual C++ 2013 x86 Minimum Runtime +!if "${VSARCH}" = "x64" +; 64-bit +!if "${VSVER}" = "12" +!define VS_REDIST_KEY "SOFTWARE\Classes\Installer\Products\6E8D947A316B3EB3F8F540C548BE2AB9" +!endif +!if "${VSVER}" = "14" +!endif + +InstallDir "$PROGRAMFILES64\YAZ" +!else +; 32-bit +!if "${VSVER}" = "12" +!define VS_REDIST_KEY "SOFTWARE\Classes\Installer\Products\21EE4A31AE32173319EEFE3BD6FDFFE3" +!endif +!if "${VSVER}" = "14" +!endif + +InstallDir "$PROGRAMFILES\YAZ" +!endif + + SetCompressor bzip2 Name "YAZ" @@ -87,10 +109,10 @@ Section "YAZ Runtime" YAZ_Runtime SetOutPath $INSTDIR\bin !if "${VS_REDIST_FULL}" != "" File "${VS_REDIST_FULL}" - ReadRegStr $1 HKLM "${VS_REDIST_KEY}" "Installed" - StrCmp $1 1 installed_redist - ExecWait '"$INSTDIR\bin\${VS_REDIST_EXE}" /passive /nostart' -installed_redist: + ReadRegDword $1 HKLM "${VS_REDIST_KEY}" "Version" + ${If} $1 == "" + ExecWait '"$INSTDIR\bin\${VS_REDIST_EXE}" /passive /nostart' + ${endif} Delete "$INSTDIR\bin\${VS_REDIST_EXE}" !endif IfFileExists "$INSTDIR\bin\yaz-ztest.exe" 0 Noservice