chi*_*uba 26 c++ application-verifier heap-corruption
使用C++,今天在演示期间发现我正在遭受损坏的堆(但仅在重要场合!!).我在SO上发现了一些帖子,并决定下载Application Verifier和Debugging工具.我目前正在运行Visual Studio 2010.
所以,现在我已经安装了调试工具,我得到一个名为Windows Kits的文件夹.在文件夹中我有一个名为WinDbg的应用程序,我试图打开我的应用程序并运行它.它被罚款但我无法获得有关我的堆损坏的任何信息.然后我安装了验证器,它只给我留下了一个头文件和一个.dll文件,我不知道该怎么办.
所以,任何人都可以告诉我如何使用这个工具,这样我就不会再遭受这样的尴尬时刻了吗?一直在论坛上搜索,因为我甚至不知道如何打开验证器,当我阅读说明如何使用它时,我真的迷失了(从2009年开始)
MSa*_*ers 28
App Verifier将安装AppVerif.EXE可执行文件.运行它,并告诉它验证您的应用程序.然后在调试器(WinDBG或IDE)中运行应用程序.
考虑将应用程序验证程序与Visual Studio调试器结合使用。
File => Add ApplicationTests(例如堆,异常,...)Debug启动您的应用程序。当发生不好的事情时……您的调试器将停止。这应该可以让您很好地了解问题的根源。
此外,在开始测试之前加载丢失的符号可能会有所帮助。在 Visual Studio 2017 中,您可以通过以下方式执行此操作:
DebugOptions and SettingsDebuggingSymbolsLoad all symbols祝你好运!
注意:完成后,请务必禁用您启用的AppVerfier检查...否则当您忘记AppVerifier时,您可能会在 6 个月后遇到一些意想不到的副作用。
C:\Windows\SysWOW64\appverif.exe 【32位版本】C:\Windows\System32\appverif.exe 【64位版本】