启动时调试应用程序

Posted

技术标签:

【中文标题】启动时调试应用程序【英文标题】:Debugging application on startup 【发布时间】:2012-05-09 15:48:24 【问题描述】:

我编写的 64 位 Qt-Gui 应用程序在尝试从 Visual Studio 启动时崩溃并显示以下消息:

应用程序无法正确启动 (0xc000007b)。单击“确定”关闭应用程序。

没有编译错误。应用程序在尝试加载所有调试符号、DLL 和库时崩溃。

在这种情况下调试的任何指针?

【问题讨论】:

从dependencywalker.com 下载并运行该工具这是Windows SDK 中包含的depends.exe 工具的更新版本。 @Kyle 我已经在 main 方法中添加了 try catch 块,应用程序控制在崩溃之前甚至没有到达那里:( @BenVoigt 做到了!经过验证,我发现我正在链接到第三方 32 位库。将其更改为 64 位版本就可以了。谢谢 !!请将其作为答案发布,我将其标记为一个。 @Vishnu:我已经这样做了。 【参考方案1】:

该错误消息通常意味着当加载器正在处理依赖项时,无法加载依赖的 DLL 之一(未找到、损坏的文件、不兼容、它自己的依赖项之一有问题,DllMain 返回 false)。

Dependency Walker (depends.exe) 是一个非常有助于追踪依赖问题的工具。它包含在 Microsoft 的 Windows SDK 中,但您应该访问 http://www.dependencywalker.com 并下载最新版本。

【讨论】:

以上是关于启动时调试应用程序的主要内容,如果未能解决你的问题,请参考以下文章

如何在应用程序未运行并点击推送通知时调试远程推送通知?

如何在保存时调试 CoreData 崩溃?

未显示错误时调试 GDB 中断

有没有办法在加载 dll 时调试发布版本?

wpf控件设计时支持

如何在展开可选值时调试“nil 的致命错误”?