Visual Studio 可扩展性菜单问题
Visual Studio Extensibility Menu issue
我一直在研究 Visual Studio 可扩展性和尝试菜单示例。我已经通过 MSDN material 了解 Visual Studio 命令 Table 但仍在努力理解其结构。对于以下示例,我希望在 "Help" 菜单下添加名为 "Dump" 的新菜单项。项目编译正常,但新菜单项未显示在 "Help" 菜单下。我缺少一些明显的东西,但无法弄清楚它是什么。非常感谢在这方面的任何帮助。命令Tablexml如下
<?xml version="1.0" encoding="utf-8"?>
<CommandTable xmlns="http://schemas.microsoft.com/VisualStudio/2005-10-18/CommandTable" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<Extern href="stdidcmd.h"/>
<Extern href="vsshlids.h"/>
<Commands package="guidTestCommandPackage">
<Groups>
<Group guid="myCommandSet" id="NewMenuGroup" priority="0x0100">
<Parent guid="guidSHLMainMenu" id="IDM_VS_MENU_HELP"/>
</Group>
</Groups>
<Menus>
<Menu guid="myCommandSet" id="DumpMenu" priority="0x700" type="Menu">
<Parent guid="myCommandSet" id="NewMenuGroup"/>
<Strings>
<ButtonText>Dump</ButtonText>
<CommandName>Dump</CommandName>
</Strings>
</Menu>
</Menus>
<Bitmaps>
<Bitmap guid="guidImages" href="Resources\TestCommand.png" usedList="bmpPic1, bmpPic2, bmpPicSearch, bmpPicX, bmpPicArrows, bmpPicStrikethrough"/>
</Bitmaps>
</Commands>
<Symbols>
<GuidSymbol name="guidTestCommandPackage" value="{2eb800ad-4b09-497c-98bb-a6a2ea8040b8}" />
<GuidSymbol name="myCommandSet" value="{368F5466-4D1A-4430-AFBD-A76B6BC95FF8}">
<IDSymbol name="NewMenuGroup" value="0x0125"/>
<IDSymbol name="DumpMenu" value="0x0126"/>
</GuidSymbol>
<GuidSymbol name="guidImages" value="{9afb3053-51d3-43a8-8225-01fc85c89f9a}" >
<IDSymbol name="bmpPic1" value="1" />
<IDSymbol name="bmpPic2" value="2" />
<IDSymbol name="bmpPicSearch" value="3" />
<IDSymbol name="bmpPicX" value="4" />
<IDSymbol name="bmpPicArrows" value="5" />
<IDSymbol name="bmpPicStrikethrough" value="6" />
</GuidSymbol>
</Symbols>
</CommandTable>
您需要定义一个 Button 元素,这是用户与之交互的元素。
解决您问题的最简单方法是替换此 XML:
<Menus>
<Menu guid="myCommandSet" id="DumpMenu" priority="0x700" type="Menu">
<Parent guid="myCommandSet" id="NewMenuGroup"/>
<Strings>
<ButtonText>Dump</ButtonText>
<CommandName>Dump</CommandName>
</Strings>
</Menu>
</Menus>
与以下 XML.
<Buttons>
<Button guid="myCommandSet" id="DumpMenu" priority="0x700" type="Button">
<Parent guid="myCommandSet" id="NewMenuGroup"/>
<Strings>
<ButtonText>Dump</ButtonText>
<CommandName>Dump</CommandName>
</Strings>
</Button>
</Buttons>
我一直在研究 Visual Studio 可扩展性和尝试菜单示例。我已经通过 MSDN material 了解 Visual Studio 命令 Table 但仍在努力理解其结构。对于以下示例,我希望在 "Help" 菜单下添加名为 "Dump" 的新菜单项。项目编译正常,但新菜单项未显示在 "Help" 菜单下。我缺少一些明显的东西,但无法弄清楚它是什么。非常感谢在这方面的任何帮助。命令Tablexml如下
<?xml version="1.0" encoding="utf-8"?>
<CommandTable xmlns="http://schemas.microsoft.com/VisualStudio/2005-10-18/CommandTable" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<Extern href="stdidcmd.h"/>
<Extern href="vsshlids.h"/>
<Commands package="guidTestCommandPackage">
<Groups>
<Group guid="myCommandSet" id="NewMenuGroup" priority="0x0100">
<Parent guid="guidSHLMainMenu" id="IDM_VS_MENU_HELP"/>
</Group>
</Groups>
<Menus>
<Menu guid="myCommandSet" id="DumpMenu" priority="0x700" type="Menu">
<Parent guid="myCommandSet" id="NewMenuGroup"/>
<Strings>
<ButtonText>Dump</ButtonText>
<CommandName>Dump</CommandName>
</Strings>
</Menu>
</Menus>
<Bitmaps>
<Bitmap guid="guidImages" href="Resources\TestCommand.png" usedList="bmpPic1, bmpPic2, bmpPicSearch, bmpPicX, bmpPicArrows, bmpPicStrikethrough"/>
</Bitmaps>
</Commands>
<Symbols>
<GuidSymbol name="guidTestCommandPackage" value="{2eb800ad-4b09-497c-98bb-a6a2ea8040b8}" />
<GuidSymbol name="myCommandSet" value="{368F5466-4D1A-4430-AFBD-A76B6BC95FF8}">
<IDSymbol name="NewMenuGroup" value="0x0125"/>
<IDSymbol name="DumpMenu" value="0x0126"/>
</GuidSymbol>
<GuidSymbol name="guidImages" value="{9afb3053-51d3-43a8-8225-01fc85c89f9a}" >
<IDSymbol name="bmpPic1" value="1" />
<IDSymbol name="bmpPic2" value="2" />
<IDSymbol name="bmpPicSearch" value="3" />
<IDSymbol name="bmpPicX" value="4" />
<IDSymbol name="bmpPicArrows" value="5" />
<IDSymbol name="bmpPicStrikethrough" value="6" />
</GuidSymbol>
</Symbols>
</CommandTable>
您需要定义一个 Button 元素,这是用户与之交互的元素。
解决您问题的最简单方法是替换此 XML:
<Menus>
<Menu guid="myCommandSet" id="DumpMenu" priority="0x700" type="Menu">
<Parent guid="myCommandSet" id="NewMenuGroup"/>
<Strings>
<ButtonText>Dump</ButtonText>
<CommandName>Dump</CommandName>
</Strings>
</Menu>
</Menus>
与以下 XML.
<Buttons>
<Button guid="myCommandSet" id="DumpMenu" priority="0x700" type="Button">
<Parent guid="myCommandSet" id="NewMenuGroup"/>
<Strings>
<ButtonText>Dump</ButtonText>
<CommandName>Dump</CommandName>
</Strings>
</Button>
</Buttons>