我正在尝试确定哪个架构具有操作系统。我正在使用此代码:
!include x64.nsh
${If} ${RunningX64}
# 64 bit code
${Else}
# 32 bit code
${EndIf}
但是我总是输入#32位代码,尽管我在W7 x64操作系统上执行它。
答案 0 :(得分:1)
尝试运行:
DetailPrint "NSIS=${NSIS_VERSION}"
System::Call 'kernel32::GetCurrentProcess()i.r0'
DetailPrint "GetCurrentProcess=$0"
System::Call 'kernel32::IsWow64Process(ir0,*i.r1)i.r2?e'
pop $3
DetailPrint "IsWow64Process: ret=$2 gle=$3 result=$1"
在我的Win8 x64操作系统上,这给了我:
NSIS=v2.46
GetCurrentProcess=-1
IsWow64Process: ret=1 gle=80 result=1