问题标签 [visual-leak-detector]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
357 浏览

visual-studio - Visual Leak Detector 在 VC++ 的 CRT 模块中报告奇怪的泄漏

我刚刚在 Windows 8 上安装了 Visual Leak Detector (2.3)。我用什么都不做的空白 CRT 程序(在 Visual Studio 2012 中)对其进行了测试。

当我运行它时,VLD 报告了 vc++ crt 模块中的奇怪泄漏:

网上没有太多关于此的详细信息,但是在这个msdn 论坛中,有一条评论说:

这并不是真正的“泄漏”,而是“准备执行环境”。它为期望它的程序制作进程环境的可写副本,并且它们将在进程退出时被释放。您可以放心地忽略该报告。

但是,我想阻止这些行出现在报告中(如果它们真的不是泄漏)

有没有人遇到过这种情况并且知道如何解决?

0 投票
2 回答
769 浏览

c++ - Visual Leak Detector 报告 40 个字节泄漏 1 个 int*

这是我的程序

视觉检漏仪报告

为什么40 bytes内存泄漏,它真的应该是4 bytes

谁能解释这里发生了什么?

0 投票
0 回答
809 浏览

c++ - 目测检漏仪无法启动

我的 MFC 程序很旧,内存泄漏很大。想要使用视觉检漏仪来了解问题的位置。我下载并安装了 VLD v2.4rc2。包含路径和库路径会自动添加到VS 2010中。但是当我启动应用程序时,它会给我一个错误,如下所述。

这里问了同样的问题,提出的解决方案是将文件复制到 VLD 的 bin 文件夹。

Microsoft.DTfW.DHL.manifest

dbghelp.dll

我什至无法在任何地方找到文件 Microsoft.DTfW.DHL.manifest,关于 dbghelp.dll,我找到了该文件的许多位置和版本(System32、Programfiles/VS、Syswow64 等)

我已经尝试复制所有可用的dbhhelp.dll文件。但情况还是一样。我正在使用 64 位应用程序。请建议我如何解决这个问题。

0 投票
1 回答
1319 浏览

c++ - Visual Leak Detector 未发现泄漏 VS2013

无论我尝试什么,我似乎都无法让 VLD 捕获任何内存泄漏。任何想法为什么?

这里也是输出的片段:


我错过了什么?

0 投票
0 回答
164 浏览

c++ - Visual Leak Detector + CFileDialog = 应用挂起

我正在使用 VLD 2.4.0 在我的 MFC x64 应用程序中搜索内存泄漏。

当我试图打开 CFileDialog 我的应用程序只是挂起,它只是等待 CFileDialog 出现(这永远不会发生)。

当我的代码中不包含 VLD 标头时,CFileDialog 按预期工作。这是我的代码:

对我来说,这是一个相当大的问题,因为这就是我将数据输入应用程序的方式,因此我可以测试其他算法是否存在内存泄漏。

有什么解决方案可以让我将 VLD 与 CFileDialog 一起使用吗?

0 投票
2 回答
2305 浏览

c++ - 可视泄漏检测器 (VLD) 显示空调用堆栈

我正在使用视觉检漏仪。对于某些泄漏,它会正确显示调用堆栈,但我得到一些调用堆栈为空的输出,如下所示:

我不知道如何跟踪这样的问题。

任何帮助,将不胜感激。

0 投票
1 回答
1729 浏览

c++ - (VS15 C++) 得到了 Visual Leak Detector 报告,但现在怎么办?

由于我的 C++ 项目中存在一些(奇怪的)问题,我使用 Visual Leak Detector(第一次)来检查项目的内存泄漏。所以我得到了以下报告:

可惜我不明白,VLD 想说的是问题所在。双击“f:\dd...”行,它应该将我的课程设置到有问题的行,不是吗?但它没有。

我现在的问题是:我如何找到问题所在的区域,或者换句话说“我如何阅读这些报告”?

此外:

  • 我使用 Visual Studio 2015
  • 该项目是一个 C++ Windows 窗体项目
  • 我将 vld.h 包含在附加包含中,并将 lib 目录包含在项目的附加库中
  • main()我使用#include <vld.h>and _CrtDumpMemoryLeaks();

编辑:

我的主要(简化版本,但提供类似的报告):

不幸的是,大约有 40 个课程,我不想发布...

0 投票
0 回答
400 浏览

c++ - 如何解决这些 C++ 编译错误?

我正在尝试编译 Visual Studio 解决方案。我相信源文件是好的。我收到了一系列编译错误。

新安装的 Visual Studio。我打开解决方案并运行构建,它有错误。我去了 Project,并注意到有许多缺失的功能。我安装了它们:-

然后我尝试构建解决方案,但收到一个错误通知我

我对此进行了研究并设法弄清楚这是指Visual Leak Detector

我安装了那个。现在我面临的错误更少,但有数百个警告。我现在不太关心的警告。但我正在努力解决错误,推动事情向前发展。

我现在得到的错误是:

首先:-

在字符串文件(有这些错误)中,这是导致错误的代码部分:

根据编译器,上面的以下 3 行是错误的:-

然而,这是一个 Microsoft 包含,直接来自 C++ 的基础类,所以我不明白它为什么会产生这个错误。

第二

我收到此错误。

为简单起见,我已将路径名称缩短为“项目路径”。

现在我已经安装了我上面提到的三个组件和 VLD,我自己的想法已经用完了。

最后一个错误是引用发布目录中的 .lib ,所以我认为这可能与编译早期没有创建 .lib 文件有关,可能是由于上面的第一个错误?但我不太确定。

你能建议我如何克服这些编译错误吗?

  • 谢谢
0 投票
1 回答
430 浏览

c++ - 与 crtdbg 相比,Visual Leak Detector 不打印任何泄漏

我已经为这个问题搜索了很多,但可以找到解决方案。

我最近下载了 VLD 2.5 并从头开始编译它,适用于 Visual Studio 2013 和 2015。在我的项目中使用它之前,我以为我运行了包提供的测试。但是所有的测试都失败了。

所有测试套件的行为相同,报告于https://vld.codeplex.com/workitem/10617

MFC-Test 应用程序输出以下内容: vldmfc.exe 的输出

这里的重点是:CRT 检测到泄漏,一个由应用程序分配的 CString 对象,VLD 没有。

我错过了什么?

0 投票
1 回答
48 浏览

visual-c++ - How can I integrate Visual Leak Detector with TeamCity?

Can I integrate Visual Leak Detector with TeamCity? If yes, how?