Windows 7 64上出现0xc000007b错误

问题描述 投票:0回答:1

我最近不得不重新安装Windows 7 64(我的硬盘死了),我正在使用vc ++ 2013构建我的项目,但是当我运行它时,我得到一个0xc000007b错误

我发现32位应用程序的这个错误通常是由于加载64位dll而不是32位版本

所以我试图弄清楚发生了什么,我尝试使用Dependency Walker,但是当我用它打开我的exe时,我看到的唯一错误是缺少那些文件:

API-MS-WIN-APPMODEL-RUNTIME-L1-1-0.DLL
API-MS-WIN-CORE-WINRT-ERROR-L1-1-0.DLL
API-MS-WIN-CORE-WINRT-L1-1-0.DLL
API-MS-WIN-CORE-WINRT-ROBUFFER-L1-1-0.DLL
API-MS-WIN-CORE-WINRT-STRING-L1-1-0.DLL
API-MS-WIN-SHCORE-SCALING-L1-1-1.DLL
DCOMP.DLL
GPSVC.DLL
IESHIMS.DLL

我怀疑这是问题,这些错误似乎表现在很多人身上,我想我应该忽略它们

其余的dll似乎没问题和32位,所以看起来很好

我试图在依赖性walker上使用profiling选项找到更多的东西,但它在加载一堆dll之后挂起,我怀疑分析日志中的任何信息都有用,但无论如何我发布它(我无法从Dependency Walker复制它)窗口导致进程此时没有响应)

我已经阅读了另一个堆栈溢出post,这个问题可能会在我无法找到的2.2.8288版本的Dependency Walker中修复

我尝试卸载并重新安装vs 2008/2010/2012/2013可再发行软件包x86 / x64以解决问题,因为有人在其他帖子中建议有关此错误,但这不起作用

目前我不知道如何弄清楚为什么会发生这种情况,任何提示都会有所帮助

编辑:

我按照建议尝试了从WDK安装它的最新Dependency Walker版本,但它遇到了同样的问题

我正在尝试使用Process Monitor,我有一个加载的dll列表。我检查了列表,在文件上运行dumpbin的脚本来检查架构以确定,this是结果,对我来说似乎没关系,唯一的x64 dll是wow64 dll,应该没问题,我是否可以忽略某些东西?

visual-studio visual-c++ windows-7 windows-7-x64
1个回答
0
投票

这是一个我知道的老问题,但因为我本周遇到了同样的错误,并花了很多时间找到原因(修复,重新安装Visual Studio,重新编译相关的DLL,...),我在这里分享我的解决方案。

由于DLL冲突,有时会发生0xc000007b错误。其中一个导入的DLL是从您预期的其他位置导入的。例如,在你的问题中,你的路径上有第二个GPSVC.DLL副本被加载并产生0xc000007b错误。

您可以使用where console命令找到DLL位置,并查看是否存在第二个副本:

> where GPSVC.DLL
C:\path\to\another\copy\GPSVC.DLL
© www.soinside.com 2019 - 2024. All rights reserved.