获取DTE.ExecuteCommand可用命令的完整列表(Get full list of ava

2019-08-04 01:11发布

我使用VS2010和外接,使用DTE.ExecuteCommand和样订做命令,Build.Cancel,Build.RebuildSolution等。

你可以用DTE.Commands.Item(“XXX”)的命令,并猜测它是否可用Command.IsAvailable。 命令的列表在工具,选项窗口,环境,键盘部分。

同样,你也知道DTE.ExecuteCommand接受两个字符串作为参数。

第一个是该命令(例如,Action.CreateNewShortcut)的名称和所述第二个是参数,所述命令需要。

问题是,一些命令需要可变数量的参数,我不知道订单等。

例如,我想Action.CreateNewShortcut需要至少两个参数:当快捷方式被执行(Build.RebuildSolution)和要被运行的操作的快捷本身(ALT + O)。

有超过在VS. 4K命令 但微软有一个关于它不是官方文件,我想。

这将是非常有用的与DTE.ExecuteCommand可用命令的完整列表的任何官方文件

有什么建议?

Answer 1:

可以按照以下步骤进行检查的命令列表:

  • 打开Visual Studio的选项对话框
  • 选择环境/键盘
  • 您可以在搜索特定的命令“显示命令包含”框中,或只是滚动它后面的列表。


Answer 2:

您可以使用即时窗口来做到这一点。 简单地键入“>”和开始输入命令。



Answer 3:

下面是列表的Mads Kristensen的用于他VoiceExtension加载项: https://raw.github.com/ligershark/VoiceExtension/master/VoiceExtension/Resources/commands.txt



Answer 4:

问题是有点老了,但我最近遇到了相同的。 我使用EnvDTE.DTE(该命令集合在这里 ),可以在电源外壳的几行被检索。 当你mentionned,名单很长,你可能要筛选的输出。

# Get Visual Studio 2015 type
# -- find other version in registry HKEY_CLASSES_ROOT\VisualStudio.DTE.x.x
$type = [System.Type]::GetTypeFromProgID("VisualStudio.DTE.14.0")
# Create an instance of EnvDTE.DTE - actually launches a devenv.exe process
$dte = [System.Activator]::CreateInstance($type,$true)
# list of Commands is output simply when typing : Can be very long
$dte.Commands
# Will output the name of the command, its GUID and other attributes
# Close process when done
$dte.Quit()


文章来源: Get full list of available commands for DTE.ExecuteCommand