visual-studio - 我可以创建 Visual Studio 宏来在调试器中启动特定项目吗?

标签 visual-studio visual-studio-2008 macros

我的项目在同一个解决方案文件中同时包含客户端和服务器组件。我通常将调试器设置为在调试时一起启动它们,但通常情况下,我在调试器之外启动服务器,以便在仅处理客户端内容时根据需要启动和停止客户端。 (这要快得多)。

我试图让自己省去在解决方案资源管理器中启动单个项目的麻烦,而宁愿只是在工具栏上贴一个按钮,该按钮调用一个宏来启动单个项目的调试器(同时将“F5”类型调试单独留在启动两个进程)。

我尝试录音,但这并没有真正产生任何有用的结果。

到目前为止,我所做的就是在解决方案资源管理器中找到项目项:

 Dim projItem As UIHierarchyItem

 projItem = DTE.ToolWindows.SolutionExplorer.GetItem("SolutionName\ProjectFolder\ProjectName").Select(vsUISelectionType.vsUISelectionTypeSelect)

(这大致基于宏记录器尝试这样做的方式。我不确定导航 UI 对象模型是否是正确的方法,或者我是否应该查看解决方案/项目对象模型)。

最佳答案

好的。如果加载了解决方案,这似乎适用于大多数 UI(所有?)上下文:

 Sub DebugTheServer()
    DTE.Windows.Item(Constants.vsWindowKindSolutionExplorer).Activate()
    DTE.ActiveWindow.Object.GetItem("Solution\ServerFolder\ServerProject").Select(vsUISelectionType.vsUISelectionTypeSelect)
    DTE.Windows.Item(Constants.vsWindowKindOutput).Activate()
    DTE.ExecuteCommand("ClassViewContextMenus.ClassViewProject.Debug.Startnewinstance")
 End Sub

关于visual-studio - 我可以创建 Visual Studio 宏来在调试器中启动特定项目吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/96250/

相关文章:

c++ - 用 C 封装 C++ 接口(interface)

c - 如何在 C 中使用静态断言来检查传递给宏的参数类型

c# - 如何循环控制台应用程序

带有简单功能导航和 "code hinting"的 JavaScript 编辑器

.net - LINQ-to-SQL 是否可以在插入时省略未指定的列,以便使用数据库默认值?

c - 如何将参数传递给可变参数宏?

objective-c - 函数的隐式声明 - C99

c# - 在 VS2008 中运行测试时出现 System.UnauthorizedAccessException

c# - 限制 Visual Studio 2005 中测试运行结果的数量

c# - 在 Visual Studio 2008 中为 .Net 托管应用程序从 WinDbg 调试 .dmp 文件