【问题标题】:What underlying VS command is fired?触发了哪些底层 VS 命令?
【发布时间】:2017-05-14 15:57:22
【问题描述】:

当我在解决方案资源管理器中右键单击选定的项目并在弹出窗口中选择“构建”时,我想拦截该构建命令。

我尝试过“Build.BuildOnlyProject”和“Build.BuildSelection”,但似乎这些不是正确的。

如何确定实际调用的是哪个命令?

当我右键单击解决方案时,我可以拦截“Build.BuildSolution”命令(因为我有一个 VS 扩展),但是当我右键单击项目时,我想做同样的事情。

【问题讨论】:

  • 你到底想怎么拦截,你想达到什么目的。了解您的场景可能有助于其他人提出解决方案。

标签: c# visual-studio-2015


【解决方案1】:

您可以订阅 EnvDTE80.Commands2.BeforeExecute 事件并检查正在执行的命令名称(请参阅How do I know from my VSIX that a build will be followed by a Debug session?)。这样你就可以找到触发了什么命令并拦截它。

【讨论】:

  • 谢谢,这太棒了。正是我想要的。原来命令是“ClassViewContextMenus.ClassViewProject.Build”。我猜不出来哈哈。
猜你喜欢
  • 2011-04-24
  • 2020-11-13
  • 1970-01-01
  • 1970-01-01
  • 2019-12-08
  • 2011-04-16
  • 2020-03-11
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多