我在Visual Studio 2015的Debug.WriteLn
输出中检查特定内容时遇到问题。(2012和2013版也是如此。)
XCode和Eclipse都在Output
窗口的顶部包含一个过滤器框。我试图为Visual Studio找到类似的扩展,但我没有运气。有没有办法获得类似的功能并过滤输出窗口?
答案 0 :(得分:30)
答案 1 :(得分:6)
VS中的各种服务写入输出窗口,因此有一个基于源的内置过滤器。您通常可以选择源,例如"构建输出","测试发现","一般","调试"等。
Debug.Write调用被VS拦截,文本最终在“输出”窗口中,但在构建过滤中没有。
我可以想出3种方法:
(*)如果沿着这条路走下去,请注意Debug.Write只是一个跟踪,当你连接VS调试器时,它会将自己添加为跟踪列表器。 DbgView也是如此。但是当你分离时,它不会删除监听器,并且消息将丢失。
答案 2 :(得分:6)
我在VS 2017中发现的一件事(我认为在其他版本中也是如此)是:
Tools | Options | Debugging | General > Redirect all Output Window text to the Immediate Window
这会在即时窗口中为您提供程序的Debug.Write
X
输出,并将所有其他垃圾留在输出窗口中,您可以将其关闭。
如果我出于某种原因需要,我仍然可以查看输出窗口中的垃圾箱;它没有被压制。它只是没有进入即时窗口。
我只是将刚出现的小窗口停在底部。
我认为这很好,因为输出窗口中出现了所有垃圾,我真的不再关注输出了比使用条款协议(也就是说,几乎没有),所以宝宝被洗澡水扔了出去。但是现在我实际上 看 一些程序调试输出,需要注意。
恕我直言Microsoft应该扩展输出窗口下拉框以包括FetFrumos在其答案中指出的所有类别,因此开发人员可以将其设置为“程序输出”。我认为这将是一个很好的改进。
答案 3 :(得分:1)