我正在尝试创建一个 Visual Studio/SSMS 扩展,将命令/按钮添加到 SQL 查询编辑器窗口的上下文菜单中。最初,我尝试使用
IDM_VS_CTXT_CODEWIN
。虽然它适用于新的 .txt
文件,但对 .SQL
文件无效。
在研究这个问题时,我偶然发现了一个建议,即启用“EnableVSIPLogging”注册表项以获取有关上下文菜单的更多信息。根据该建议,SQL 编辑器窗口上的
Ctrl+Shift+RClick
给了我:
Guid = {33F13AC3-80B4ECE-85BC-225435603A5E}
GuidiD 240
CmdlD = 80
Type = 0x00000400
Flags = 0x00000000
NameLoc = (null)
但是,我不确定如何使用此信息来查找正确的家长 ID。
下面是我的
.vsct
文件中的片段:
<Group guid="guidColumnToCSVPackageCmdSet" id="MyEditorCtxGroup" priority="0x001">
<Parent guid="guidSHLMainMenu" id=""/>
</Group>
我也不确定我设置的家长指南是否适合此目的。有人可以指导我如何使用提供的 GUID 和其他详细信息将命令添加到 SQL 查询编辑器窗口的上下文菜单中吗?任何见解或指示将不胜感激。
这个很难找到,而且由于 Bing CoPilot 只想使用你的问题作为答案,所以我必须做大量的逆向工程才能找到它。
首先,您示例中的 Guid 缺少一些字符
Guid = {33F13AC3-80B4ECE-85BC-225435603A5E}
这个应该是
{33F13AC3-80BB-4ECB-85BC-225435603A5E}
其次,您必须将十进制 80 转换为十六进制 0x0050。
我发现添加 GuidSymbols 然后在展示位置中使用文本更具可读性
<Group guid="guidPasteCommandPackageCmdSet" id="PasteGroup" priority="0x0201">
<Parent guid="queryWindowContextCommandSet" id="queryWindowContextMenu" />
</Group>
然后在指南中
我希望这有帮助!