1
我想确定我的应用程序运行的PC是x64还是x86。FASM - IsWow64Process - 检查布尔结果
这里是我当前的代码:
format PE GUI 4.0
include "Win32A.Inc"
entry start
section ".idata" import data readable writable
library kernel32,"KERNEL32.DLL",user32,"USER32.DLL"
import kernel32,\
IsWow64Process,"IsWow64Process",\
GetCurrentProcess,"GetCurrentProcess",\
ExitProcess,"ExitProcess"
import user32,\
MessageBox,"MessageBoxA"
section '.data' data readable writeable
hProcess dd ?
hResult dd ?
section '.code' code readable executable
start:
invoke GetCurrentProcess
mov [hProcess],eax
invoke IsWow64Process,hProcess,hResult
cmp [hResult],1
je Is64
cmp [hResult],0
je Is32
invoke ExitProcess,0
Is64:
invoke MessageBox,0,'64','AR',0
invoke ExitProcess,0
Is32:
invoke MessageBox,0,'32','AR',0
invoke ExitProcess,0
它只是崩溃后执行。
什么是检查布尔值的正确方法,我正确地做那部分?
感谢您解决此问题的任何帮助。