我正在使用GetBinaryType
检查可执行文件是32位还是64位。我正在针对64位文件进行测试,但它一直失败。我相信这是由于我比较DWORD
结果的方式?
我正在使用Visual Studio 2010 C++:
DWORD dwBinaryType;
if (GetBinaryType(ChildFile(), &dwBinaryType) == 6)
{
MessageBox(NULL, L"64bit Detected...", L"Debug: GetBinaryType", MB_OK); // DEBUG
}
else
{
MessageBox(NULL, L"Probably 32bit...", L"Debug: GetBinaryType", MB_OK); // DEBUG
}
任何建议将不胜感激。
最佳答案
根据MSDN for GetBinaryType
:
将上面的代码更改为此应该可以解决问题:
if (GetBinaryType(ChildFile(), &dwBinaryType)
&& dwBinaryType == SCS_64BIT_BINARY)
{
// ...
}
关于c++ - C++ GetBinaryType失败,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20308195/