首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在包含vld.h之后,“应用程序无法正确启动”

在包含vld.h之后,“应用程序无法正确启动”
EN

Stack Overflow用户
提问于 2013-10-07 02:46:29
回答 5查看 8K关注 0票数 19

我将vld.h、vld.lib和vld_x86.dll包含在visual 2010的Win32项目中。它构建正确,但当我执行时,它会崩溃,其中包含以下消息:

代码语言:javascript
运行
复制
"The application was unable  to start correctly (0xc0150002). Click OK to close the application."

我使用Dependency运行它,但是它显示并行错误如下:

代码语言:javascript
运行
复制
Error: The Side-by-Side configuration information for "D:\project\..\debug\VLD_X86.DLL" contains errors. The application has failed to start because its side-by-side configuration is incorrect.)

我尝试过各种方法,包括按照这里的建议对舱单进行修补:

代码语言:javascript
运行
复制
https://vld.codeplex.com/discussions/360243

只有当我在vld.h上注释了下面的行时,它才能正常运行

代码语言:javascript
运行
复制
// Force a symbolic reference to the global VisualLeakDetector class object from
// the DLL. This ensures that the DLL is loaded and linked with the program,
// even if no code otherwise imports any of the DLL's exports.
//#pragma comment(linker, "/include:__imp_?g_vld@@3VVisualLeakDetector@@A")

但是,如果我注释掉了该行,vld根本就不会输出任何内容(就像没有vld集成一样)。

以前有人有这个问题吗?如有任何建议,敬请见谅!

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2013-11-19 06:43:56

我也有这个问题,您需要将所有这些文件添加到与vld_x86.dll/vl_x64.dll相同的目录中。

Microsoft.DTfW.DHL.manifest

dbghelp.dll

它来自Visual泄漏检测器的bin 32/bin 64 bin文件夹。这是从:https://vld.codeplex.com/wikipage?title=Building%20Visual%20Leak%20Detector%20from%20Source找到的。

票数 25
EN

Stack Overflow用户

发布于 2014-07-14 06:10:59

我也有这个问题(这个错误消息)。在我的例子中,vld_x86.dll很可能是在另一个比预期版本更高的版本中预装和注册的。(似乎每个人都喜欢VLD ),因此,它是加载的,而不是构建VLD的路径中的vld_x86.dll。取消注册外部DLL解决了问题。

因此,您可能需要检查输出,以从异域路径加载DLL。

票数 2
EN

Stack Overflow用户

发布于 2015-07-28 23:27:46

如果您正在使用

  • 如果您没有在include、linker部分中处理项目属性,最简单的修复方法是确保没有手动添加VLD。相反,清除您在这里制作的包含并保存您的项目。
  • 关闭它,然后安装最新的VLD,它将自动为您的Visual项目创建包含父继承,包括环境路径。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19216358

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档