这是一个相当受欢迎的问题,但所有答案几乎都说:“使用 IsWow64Process 函数”。问题是如果应用程序是 64 位,它会返回 FALSE。我想要一个无论我的应用程序的位数如何都能正常工作的解决方案。
最佳答案
创建一个函数,为 32 位进程调用 Win32 API 函数 IsWow64Process()
,并为 64 位进程返回 true
。
bool is_64bit(void)
{
#if defined(_WIN64)
return true; // 64-bit programs run only on Win64
#elif defined(_WIN32)
BOOL f64 = FALSE;
return IsWow64Process(GetCurrentProcess(), &f64) && f64;
#endif
}
关于c++ - 检测 C++ 应用程序是在 32 位还是 64 位 Windows 上运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17910961/