我正在调试大量使用 STL 的应用程序,为了不整天在键盘上敲击 Shift-F11,我有一个 my.natstepfilter 文件C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\Packages\Debugger\Visualizers
包含
<?xml version="1.0" encoding="utf-8"?>
<StepFilter xmlns="http://schemas.microsoft.com/vstudio/debugger/natstepfilter/2010">
<Function><Name>std::.*</Name><Action>NoStepInto</Action></Function>
</StepFilter>
据我所知,这是让 VS2012 不进入任何以 开头的函数的方法std::
,如果我错了,请纠正我。
然而,这没有任何影响,调试器只是跳转到所有内容。此外,当使用过滤器运行 procmonVisualizers
并启动调试会话时,它看起来像这样:
因此它会查询正确目录中的所有内容,然后继续读取所有 .natvis 文件,但不读取 .natstepfilter 文件。所以看起来 VS 正在积极地做一些事情来完全忽略过滤器。
有关如何解决此问题或在哪里进一步寻找解决方案的任何想法?
附加信息:我加载了一大堆扩展,但它们似乎与调试器没有任何关系(更不用说他们会告诉 VS 跳过过滤器文件)。只是为了确保在我读到过滤器不适用于混合模式时Debugger Type
明确设置为。Native Only
被调试的应用程序只是本机的。尝试调试 x86 和 x64 进程。