使用一个NSIS安装程序在32位操作系统上安装32位二进制文​​件,在64位操作系统上安装64位二进制文​​件?

Jul*_*ing 14 installer nsis

我目前有两个WIX安装程序用于我维护的产品.一个用于32位操作系统,一个用于64位操作系统.我想将它们组合成一个NSIS安装程序,而不是维护两个单独的安装程序,它可以"确定"操作系统的"位数",然后将相应的二进制文件复制到程序目录中.有没有人有这方面的经验,并可以提供NSIS可用于制作安装程序的工作示例脚本?

And*_*ers 11

x64.nsh有一些辅助宏,你可以安装到$programfiles32$programfiles64

编辑:

Function .onInit
StrCpy $instdir $programfiles32\MyApp
${If} ${RunningX64}
  StrCpy $instdir $programfiles64\MyApp
${EndIf}
FunctionEnd

...

Section
Setoutpath $instdir
${If} ${RunningX64}
  File /r build\64\*
${Else}
  File /r build\32\*
${EndIf}
SectionEnd
Run Code Online (Sandbox Code Playgroud)