Visual Studio 中立即窗口的自动清理

8
我有一个关于在Visual Studio中调试的问题。是否可以在每次调试应用程序启动之前自动清除Visual Studio中的即时窗口?>cls命令和上下文菜单->全部清除很有用,但它们不是自动的,每次运行应用程序都需要个人注意。同样,System.Diagnostics.Debug.Print()|Write*()方法只能将消息写入即时窗口,因此>cls不适用。是否有解决该问题的方法?(目前我使用VS 2008)
感谢您的建议。
1个回答

9
这是所需的宏。在宏IDE类视图中,导航到“我的宏” - “环境事件”。打开(双击)环境事件。将以下代码插入模块中:
Private Sub BuildEvents_OnBuildDone( _
    ByVal Scope As EnvDTE.vsBuildScope, _
    ByVal Action As EnvDTE.vsBuildAction) _
    Handles BuildEvents.OnBuildDone

    Try
        Dim activeWin As Window = DTE.ActiveWindow
        Dim immedWin As Window = DTE.Windows.Item("{ECB7191A-597B-41F5-9843-03A4CF275DDE}")
        immedWin.Activate()
        DTE.ExecuteCommand("Edit.ClearAll")
        activeWin.Activate()
    Catch ex As Exception
    End Try
End Sub

在这里,您可以看到它应该是什么样子:macro in EnvironmentEvents 请查看我的快速教程如何创建和执行VS宏

谢谢您的回复,Peter。我已经在VS宏中尝试了您的代码,但是在使用BuildEvents对象的Handles BuildEvents.OnBuildDone行中出现了错误_"Handles子句要求在包含类型或其基类型之一中定义一个带有WithEvents变量"_。不幸的是,我对VB.NET并不是很熟悉。 - Lyubomyr Shaydariv
1
你把它放在了EnvironmentEvents模块里吗?应该有一个自动生成的区域,其中包含正确的变量定义: <System.ContextStaticAttribute()> Public WithEvents BuildEvents As EnvDTE.BuildEvents 在这个区域之后插入宏。我会更新我的答案并附上截图。 - Peter Macej
我在工作日结束时错过了它。))) 谢谢,彼得!:) - Lyubomyr Shaydariv
正是我想要的,只用了5秒钟在谷歌上找到它。我不敢相信你们只有一个投票。 - Tim Murphy
那应该是“我不敢相信”。 - Tim Murphy

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接