【问题标题】:0xc000007b error in running a c++ made program运行 c++ 程序时出现 0xc000007b 错误
【发布时间】:2018-07-23 11:29:00
【问题描述】:

这个问题的标题可能是重复的,但我没有找到合适的解决方案。 我用 VS2015(x64_release_mode) 和许多第三方库制作了一个 c++ mfc 项目。 我的程序在我的电脑(windows 10、x64)上运行良好,但是当我在另一台电脑上运行它时,出现以下错误:

“应用程序无法正确启动0xc000007b。”

我收集了所有依赖的第三方 dll,还安装了 MSVS_redistributable_2015_x64。

我在上面使用了dependancy_walker,但我遇到了一些无意义的错误。我说废话是因为我有那些错误 即使在我自己的计算机(我的程序在其中运行)中,错误也指向一些正确安装的 MS dll(我认为)。
我什至安装了整个 Visual Studio 2015,但结果是一样的。有什么我错过的吗?

附:我没有在我的程序中混入任何 32 位的东西。我所有的作品都在 64 位世界中。

提前致谢。

【问题讨论】:

  • 谢谢亚历克斯。我以前没有使用过事件查看器。我应该如何处理它以及它应该如何提供帮助?
  • 你打开 64 位版本的 Dependency Walker 了吗? ..我怀疑它显示的信息是无稽之谈。 Here有些人有同样的问题。
  • 错误代码 0xC000007B 是STATUS_INVALID_IMAGE_FORMAT。这通常是由于尝试加载位数不匹配的模块(将 32 位图像加载到 64 位进程,反之亦然)引起的。您可以启用loader snaps 来诊断问题。

标签: c++ windows mfc


【解决方案1】:

感谢你们所有的 cmets。我发现了真正的问题,所以我把它贴在这里与其他程序员分享。

我使用了 opencv_world340.dll,它是与 cuda 和 nvidia 库一起构建的,因此它需要一些名为“nvcuda.dll”的 dll。我早些时候从我的电脑上拿起它,所以没有“缺少 nvcuda.dll”错误,但该 dll 不应该适用于每台电脑并给出 0x000007b 错误。

我用来测试我的exe的另一台电脑没有显卡,所以没有安装nvidia,也没有兼容的nvcuda.dll。

我终于在不涉及nvidia库的情况下构建了opencv dll,并且对于无GPU的计算机问题已经解决了!

【讨论】:

    猜你喜欢
    • 2013-11-30
    • 2013-09-13
    • 1970-01-01
    • 2021-07-18
    • 1970-01-01
    • 1970-01-01
    • 2019-06-24
    • 1970-01-01
    相关资源
    最近更新 更多