Given a Windows process handle, how can I determine, using C++ code, whether the process is 32 bit or 64 bit?
If you have handle to the module then you can do this:
IMAGE_NT_HEADERS * headers = ImageNtHeader(handle);
if ( headers->FileHeader.Machine == IMAGE_FILE_MACHINE_I386 )
{
//module is x86
}
else if ( headers->FileHeader.Machine == IMAGE_FILE_MACHINE_AMD64 )
{
//module is x64
}
I took help from my own answer.