【问题标题】:Detecting windows 32bit or 64 bit using NSIS使用 NSIS 检测 Windows 32 位或 64 位
【发布时间】:2014-08-06 11:52:29
【问题描述】:

我正在尝试确定哪个架构具有操作系统。我正在使用此代码:

!include x64.nsh

${If} ${RunningX64}
    # 64 bit code
${Else}
    # 32 bit code
${EndIf}     

尽管我在 W7 x64 操作系统上执行它,但总是输入 #32 位代码。

【问题讨论】:

标签: nsis


【解决方案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

【讨论】:

    猜你喜欢
    • 2012-10-25
    • 2011-10-24
    • 2011-12-15
    • 2017-08-04
    • 2012-10-26
    • 2010-12-17
    • 2019-01-07
    • 2019-03-28
    相关资源
    最近更新 更多