【问题标题】:Add item to Visual Studio source control context menu将项目添加到 Visual Studio 源代码管理上下文菜单
【发布时间】:2019-03-01 06:51:30
【问题描述】:

我想为 VS Source Control Explorer 上下文菜单创建一个扩展, 为了在文本编辑器上下文菜单上添加一个选项,我知道您需要将组的父节点上的IDM_VS_CTXT_CODEWIN 设置到 vsct 文件中。

谁能告诉我源代码管理资源管理器上下文菜单的正确值?

【问题讨论】:

    标签: visual-studio tfs vsix


    【解决方案1】:

    我认为特定的上下文菜单 guid:id 对不会在任何地方发布。我通常尝试搜索 ....VSSDK\VisualStudioIntegration\Common\Inc 目录下的各种 .VSCT 文件,以在上下文菜单中找到一个独特的菜单项,找出它的父菜单组,然后从那里返回。

    但是考虑到连接到 IDE 的数千个命令和菜单,这可能是一个偶然的情况。

    如果在上述路径上搜索各种 .VSCT 文件没有成功,我通常会恢复使用 EnableVSIPLogging 注册表项,以发现给定上下文菜单的 guid:id 对。

    最简单的设置方法是安装Mad's Extensibility Tools extension,它会在 IDE 的主“查看”菜单上添加“启用 VSIP 日志记录”命令。一旦你设置了这个,如果你按住 CTRL+SHIFT 键,同时在工具窗口中单击鼠标右键,你会得到一个诊断消息框,其中包含上下文菜单的 guid 和 id。您可以将它们用作包含您的命令的菜单组的父级。

    例如:


    VS调试消息

    菜单数据:

    Guid = {**FFE1131C-8EA1-4D05-9728-34AD4611BDA9**}
    GuidID = 962
    CmdID = ***4113***
    Type = 0x00000400
    Flags = 0x04000000
    

    NameLoc = (null)

    好的

    其中 FFE1131C-8EA1-4D05-9728-34AD4611BDA9 是上下文菜单 GUID,4113 是菜单 ID。

    注意,如果您在选择实际命令时按住 CTRL+SHIFT,则会出现相同的对话框,但 guid 和 cmdid 将标识所选的特定命令(菜单项)。

    真诚的,

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-12-07
      • 2023-03-27
      • 2016-03-18
      • 1970-01-01
      相关资源
      最近更新 更多