I created a 64bit c++ project in Visual Studio 2010 (under Windows 7 64bit);
I thought I was running a 64bit application, and the following code returned true:
bool is64bit = (sizeof(void*)==8);
but if I called the function IsWow64Process
, it returned FALSE...
More weird things:
- calling
LoadLibrary()
to load a dll underc:\windows\system32\some.dll
works well - loading a dll under
c:\windows\sysWow64\some.dll
will fail (error code 193: some.dll is not a valid win32 application)
All these failures suggest the application is running under 32bit mode, but this is against the truth the pointer type is 8-byte length
I am confused, any help will be appreciated!