MSVC 2010 - 在x64中构建时出现错误0xc000007b

时间:2013-01-06 15:36:27

标签: visual-c++

标题非常简单 - 在x64中构建时我无法运行任何内容,而且我收到一个带有此错误代码的消息框。你知道这里可能出现什么问题吗?

2 个答案:

答案 0 :(得分:2)

这是STATUS_INVALID_IMAGE_FORMAT,您可以在ntstatus.h SDK头文件中找到这些错误代码。

它肯定与构建x64代码密切相关。只要程序依赖于32位代码,特别是在DLL中,您就会得到此状态代码。尝试在启动时加载DLL时,程序将无法启动,64位进程不能包含任何32位代码。或者反过来说,一个试图加载64位DLL的32位进程。

查看程序的所有依赖项,尤其是链接的导入库。必须构建一切以定位x64。您可以使用SysInternals的ProcMon实用程序来查找无法加载的DLL,以防这是DLL Hell问题。

答案 1 :(得分:1)

只是上面正确答案的补充:还要检查你.manifest文件(相应的#pragma comment(链接器,“/ manifestdependency ...)并确保你有32位的processorArchitecture ='x86'和processorArchitecture ='amd64'代表x64代码。