【问题标题】:Immediate Window automatic cleaning in Visual StudioVisual Studio 中的即时窗口自动清理
【发布时间】:2010-02-25 12:37:20
【问题描述】:

我有一个关于在 Visual Studio 中进行调试的问题。是否可以在每次启动已调试的应用程序之前自动清除 Visual Studio 中的即时窗口? >cls 命令和Context Menu->Clear All 很有用,但它们不是自动的,每次运行应用程序时都需要个人注意。同样,System.Diagnostics.Debug.Print()|Write*() 方法只能将消息写入即时窗口,因此>cls 不适用。这个问题有什么解决办法吗? (目前我使用VS 2008)

感谢您的建议。

【问题讨论】:

    标签: .net visual-studio debugging immediate-window


    【解决方案1】:

    这是执行此操作的宏。在宏 IDE 类视图中导航到 MyMacros - EnvironmentEvents。打开(双击)EnvironmentEvents。在模块中插入以下代码:

    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
    

    在这里您可以看到它的外观:

    请参阅我的快速教程how to create and execute VS macro

    【讨论】:

    • 谢谢你的回复,彼得。我已经在 VS Macros 中尝试过你的代码,但出现错误 “Handles 子句需要在包含类型或其基本类型之一中定义的 WithEvents 变量。”Handles 行BuildEvents.OnBuildDone 与 BuildEvents 对象。不幸的是,我对 VB.NET 不是很熟悉。
    • 你把它放在EnvironmentEvents模块中了吗?应该有具有正确变量定义的自动生成区域: Public WithEvents BuildEvents As EnvDTE.BuildEvents 在该区域之后插入宏。我会用截图更新 mu 答案
    • 我在工作日结束时错过了它。 ))) 谢谢你,彼得! :)
    • 正是我想要的,只需 5 秒钟就可以通过谷歌搜索找到它。我相信您对此只有一票。
    • 那应该是不敢相信的。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-31
    • 2013-07-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多