VSIX/VSPackage: Solution Control Explorer context menu - visual-studio-2013

I am having a lot of issues trying to understand how to get a submenu working in VisualStudio 2013's Solution Control Explorer, when creating a VSPackage project. I am able to add buttons, and that is great. However, I want to create the submenus such as the existing "Find" and "Advanced":
The code below is getting the two buttons in the menu list (as seen in the image/link above), but it does not show the submenu. I have tried to add buttons to the submenu, but it still does not show.
<Commands package="guidFirstPackagePkg">
<Menus>
<Menu guid="guidVSPackage3CmdSet" id="SubMenu" priority="0x0100" type="Menu">
<Parent guid="guidSourceControlExplorerMenuGroup" id="SourceControlExplorerMenuGroupId"/>
<Strings>
<ButtonText>Sub Menu</ButtonText>
<CommandName>Sub Menu</CommandName>
</Strings>
</Menu>
</Menus>
<!--Buttons section. -->
<Buttons>
<Button guid="guidVSPackage2CmdSet" id="cmdIdImport" priority="0x0100" type="Button">
<Parent guid="guidSourceControlExplorerMenuGroup" id="SourceControlExplorerMenuGroupId" />
<Strings>
<ButtonText>Import</ButtonText>
</Strings>
</Button>
<Button guid="guidVSPackage2CmdSet" id="cmdIdExport" priority="0x0100" type="Button">
<Parent guid="guidSourceControlExplorerMenuGroup" id="SourceControlExplorerMenuGroupId" />
<Strings>
<ButtonText>Export</ButtonText>
</Strings>
</Button>
</Buttons>
</Commands>
<Symbols>
<!-- This is the package guid. -->
<GuidSymbol name="guidFirstPackagePkg" value="{fd27b3da-39c0-486a-9900-652cb81b0744}" />
<GuidSymbol name="guidSourceControlExplorerMenuGroup" value="{ffe1131c-8ea1-4d05-9728-34ad4611bda9}">
<IDSymbol name="SourceControlExplorerMenuGroupId" value="0x1111" />
</GuidSymbol>
<GuidSymbol name="guidVSPackage2CmdSet" value="{1d975044-0a78-4e91-a6c2-2e841f4280e4}">
<IDSymbol name="cmdIdImport" value="0x0100" />
<IDSymbol name="cmdIdExport" value="0x0110" />
</GuidSymbol>
<GuidSymbol name="guidVSPackage3CmdSet" value="{C860DEF0-0A00-44BE-A8D9-393BACE1A44A}">
<IDSymbol name="SubMenu" value="0x1001"/>
</GuidSymbol>
</Symbols>
Any ideas of what I am doing wrong? Wrong linking, can I not use the same "SourceControlExplorerMenuGroupId" for menus, but only buttons?
I know a related post dealt with the addition of a button to the Solution Control Explorer, however, I was unable to replicated this for a Solution Control Explorer submenu:
Creating VSIX package for TFS Source control explorer context menu extension
Another reference I tried, but was not related to Solution Control Explorer:
Why isn't my vspackage's context menu showing

Your <Menus> code is fine.
Create a group with its parent guid and id matching your menu guid and id:
<Groups>
<Group guid="guidVSPackage3CmdSet" id="MyMenuGroup" priority="0x0600">
<Parent guid="guidVSPackage3CmdSet" id="SubMenu" />
</Group>
</Groups>
Then, just have your buttons be children of the group:
<Buttons>
<Button guid="guidVSPackage2CmdSet" id="cmdIdImport" priority="0x0100" type="Button">
<Parent guid="guidVSPackage3CmdSet" id="MyMenuGroup" />
<Strings>
<ButtonText>Import</ButtonText>
</Strings>
</Button>
<Button guid="guidVSPackage2CmdSet" id="cmdIdExport" priority="0x0100" type="Button">
<Parent guid="guidVSPackage3CmdSet" id="MyMenuGroup" />
<Strings>
<ButtonText>Export</ButtonText>
</Strings>
</Button>
</Buttons>

Related

visual studio extensions command id for multiple project selection

I found IDM_VS_CTXT_PROJNODE for single project, and IDM_VS_CTXT_XPROJ_PROJITEM for multiple project but have to select one or more not project file. I want to create a command button like Build Selection.
EDIT:
vsct file:
<?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="guidMyMenuPackage">
<Menus>
<Menu guid="guidMyMenuPackageCmdSet" id="MyMenu" type="Menu" priority="0x0700">
<Strings>
<ButtonText>MyMenu</ButtonText>
</Strings>
</Menu>
</Menus>
<Groups>
<Group guid="guidMyMenuPackageCmdSet" id="RootGroup" priority="0x0600" />
<Group guid="guidMyMenuPackageCmdSet" id="MyMenuGroup" priority="0x0601" />
</Groups>
<Buttons>
<Button guid="guidMyMenuPackageCmdSet" id="cmdidButton1" priority="0x0101" type="Button">
<Strings>
<ButtonText>Button1</ButtonText>
</Strings>
</Button>
<Button guid="guidMyMenuPackageCmdSet" id="cmdidButton2" priority="0x0102" type="Button">
<Strings>
<ButtonText>Button2</ButtonText>
</Strings>
</Button>
</Buttons>
</Commands>
<CommandPlacements>
<CommandPlacement guid="guidMyMenuPackageCmdSet" id="RootGroup" priority="0x1011">
<!--for single project file-->
<Parent guid="guidSHLMainMenu" id="IDM_VS_CTXT_PROJNODE"/>
</CommandPlacement>
<CommandPlacement guid="guidMyMenuPackageCmdSet" id="MyMenu" priority="0x0001">
<Parent guid="guidMyMenuPackageCmdSet" id="RootGroup"/>
</CommandPlacement>
<CommandPlacement guid="guidMyMenuPackageCmdSet" id="MyMenuGroup" priority="0x0001">
<Parent guid="guidMyMenuPackageCmdSet" id="MyMenu"/>
</CommandPlacement>
<CommandPlacement guid="guidMyMenuPackageCmdSet" id="cmdidButton1" priority="0x0001">
<Parent guid="guidMyMenuPackageCmdSet" id="MyMenuGroup"/>
</CommandPlacement>
<CommandPlacement guid="guidMyMenuPackageCmdSet" id="cmdidButton2" priority="0x0002">
<Parent guid="guidMyMenuPackageCmdSet" id="MyMenuGroup"/>
</CommandPlacement>
</CommandPlacements>
<Symbols>
<GuidSymbol name="guidMyMenuPackage" value="{BDC1A8B0-8D78-43F9-A26F-234517DAF68E}" />
<GuidSymbol name="guidMyMenuPackageCmdSet" value="{FAACBD48-7657-4CFF-7BD4-39D77F9D1542}">
<IDSymbol name="RootGroup" value="0x1020"/>
<IDSymbol name="MyMenuGroup" value="0x1021"/>
<IDSymbol name="MyMenu" value="0x1022" />
<IDSymbol name="cmdidButton1" value="0x0101" />
<IDSymbol name="cmdidButton2" value="0x0102" />
</GuidSymbol>
</Symbols>
</CommandTable>

VSCT menu items not showing

Visual Studio 2019 16.5.0 preview 1.
I'm trying to get my menu items to show up either in a group or on a different menu.
Currently the menu items show up in the View/Other Windows menu on visual studio if I point them to IDG_VS_WNDO_OTRWNDWS1, but if I try to point them to MyMenuGroup, they just don't appear. The code will run but the menu items never show up on the menu. If I try to point the buttons to IDM_VS_MENU_EXTENSIONS, it won't even compile, giving the error below:
Undefined 'Parent/#id' attribute 'IDM_VS_MENU_EXTENSIONS' in a <Button> element
Below is my code:
<Groups>
<Group guid="MyGroupMenuSet" id="MyMenuGroup" priority="0x0100">
<Parent guid="guidSHLMainMenu" id="IDG_VS_WNDO_OTRWNDWS1" />
</Group>
</Groups>
<Buttons>
<Button guid="My_ExtVS2019PackageCmdSet" id="cmdidMyWindowCommand" priority="0x0100" type="Button">
<!-- <Parent guid="guidSHLMainMenu" id="IDG_VS_WNDO_OTRWNDWS1" /> -->
<Parent guid="MyGroupMenuSet" id="MyMenuGroup" />
<Strings>
<ButtonText>My Main Window</ButtonText>
</Strings>
</Button>
<Button guid="My_ExtVS2019PackageCmdSet" id="cmdidMyOtherControlCommand" priority="0x0100" type="Button">
<!--<Parent guid="guidSHLMainMenu" id="IDG_VS_WNDO_OTRWNDWS1" />-->
<Parent guid="MyGroupMenuSet" id="MyMenuGroup" />
<Strings>
<ButtonText>My Other Window</ButtonText>
</Strings>
</Button>
</Buttons>
</Commands>
<Symbols>
<!-- This is the package guid. -->
<GuidSymbol name="My_ExtVS2019Package" value="{a28e16ed-f550-4cac-b087-f3728834a026}" />
<GuidSymbol value="{3d62bd83-4a3e-4e04-8ea8-800ea9316e90}" name="My_ExtVS2019PackageCmdSet">
<IDSymbol value="256" name="cmdidMyWindowCommand" />
<IDSymbol value="257" name="cmdidMyOtherControlCommand" />
</GuidSymbol>
<GuidSymbol value="{dd7dd38d-bf53-408e-baa4-c5c7c7774f19}" name="MyGroupMenuSet">
<IDSymbol value="4128" name="MyMenuGroup" />
<IDSymbol value="256" name="cmdidCommand1" />
</GuidSymbol>
</Symbols>
Any clue what's wrong with my code?
Currently the menu items show up in the View/Other Windows menu on
visual studio if I point them to IDG_VS_WNDO_OTRWNDWS1.
Button's parent should be a group type. And IDG_VS_WNDO_OTRWNDWS1 is one child group of IDG_VS_VIEW_DEV_WINDOWS, so it works as we expected.
But if I try to point them to MyMenuGroup, they just don't appear.
MyMenuGroup and IDG_VS_WNDO_OTRWNDWS1 also represent Group type. One group's parent should be one menu instead of a group, or it won't work. See my another issue here.
So if you want to use your custom group, you should use this structure in xx.vsct:
Button => MyMenuGroup(group) => one menu(menu) => IDG_VS_WNDO_OTRWNDWS1(group)
instead of: Button => MyMenuGroup(group) => IDG_VS_WNDO_OTRWNDWS1(group)
Workaround:
Change this part:
<Groups>
<Group guid="MyGroupMenuSet" id="MyMenuGroup" priority="0x0100">
<Parent guid="guidSHLMainMenu" id="IDG_VS_WNDO_OTRWNDWS1" />
</Group>
</Groups>
To:
<!--<Groups>
<Group guid="guidTestVSIXWindowPackageCmdSet" id="MyMenuGroup" priority="0x0600">
<Parent guid="guidSHLMainMenu" id="IDG_VS_WNDO_OTRWNDWS1"/>
</Group>
</Groups>-->
<Menus>
<Menu guid="guidTestVSIXWindowPackageCmdSet" id="MyMenu" priority="0x0100" type="Menu">
<Parent guid="guidSHLMainMenu" id="IDG_VS_WNDO_OTRWNDWS1"/>
<Strings>
<ButtonText>My Two Windows</ButtonText>
<CommandName>MyTwoWindows</CommandName>
</Strings>
</Menu>
</Menus>
<Groups>
<Group guid="guidTestVSIXWindowPackageCmdSet" id="MyMenuGroup" priority="0x0600">
<Parent guid="guidTestVSIXWindowPackageCmdSet" id="MyMenu"/>
</Group>
</Groups>
And don't forget to define the MyMenu in GuidSymbol :
<GuidSymbol value="{dd7dd38d-bf53-408e-baa4-c5c7c7774f19}" name="MyGroupMenuSet">
<IDSymbol value="4128" name="MyMenuGroup" />
<IDSymbol value="256" name="cmdidCommand1" />
<IDSymbol name="MyMenu" value="41" />
</GuidSymbol>
Then now VS can work to display your two windows in this way(View=>Other windows):
In addition: As for the Undefined IDM_VS_MENU_EXTENSIONS, I've post the feedback here. In my opinion, this could be one issue about the document or the build tools package, anyone interested in it can track the issue and get the latest info there.
Hope it helps:)

how to create a solution right click top-level menu with sub-level button?(visual studio extension)

Visual Studio Version: 2019
I'm follow adding a menu to the visual studio menu bar to create menus, it works, the menus will be display ubder Extensions menu. Now, I want to move these menus to solution context menu, so I changed Menu>Parent>id to IDM_VS_CTXT_SOLNNODE. But it doesn't working.
Before:
<?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="guidVSIXProject1Package">
<Menus>
<Menu guid="guidVSIXProject1PackageCmdSet" id="TopLevelMenu" priority="0x700" type="Menu">
<Parent guid="guidSHLMainMenu" id="IDM_VS_CTXT_SOLNNODE" />
<Strings>
<ButtonText>TestMenu</ButtonText>
<CommandName>TestMenu</CommandName>
</Strings>
</Menu>
</Menus>
<Groups>
<Group guid="guidVSIXProject1PackageCmdSet" id="MyMenuGroup" priority="0x0600">
<Parent guid="guidVSIXProject1PackageCmdSet" id="TopLevelMenu"/>
</Group>
</Groups>
<Buttons>
<Button guid="guidVSIXProject1PackageCmdSet" id="TestCommandId" priority="0x0100" type="Button">
<Parent guid="guidVSIXProject1PackageCmdSet" id="MyMenuGroup" />
<Icon guid="guidImages" id="bmpPic1" />
<Strings>
<ButtonText>Invoke TestCommand</ButtonText>
</Strings>
</Button>
</Buttons>
<Bitmaps>
<Bitmap guid="guidImages" href="Resources\TestCommand.png" usedList="bmpPic1, bmpPic2, bmpPicSearch, bmpPicX, bmpPicArrows, bmpPicStrikethrough"/>
</Bitmaps>
</Commands>
<Symbols>
<GuidSymbol name="guidVSIXProject1Package" value="{fdde7b56-2c13-4a0b-bb96-d0b1c712c674}" />
<GuidSymbol name="guidVSIXProject1PackageCmdSet" value="{23dc4a5e-5843-45cb-8b8b-c4a11184d73e}">
<IDSymbol name="MyMenuGroup" value="0x1020" />
<IDSymbol name="TestCommandId" value="0x0100" />
<IDSymbol name="TopLevelMenu" value="0x1021"/>
</GuidSymbol>
<GuidSymbol name="guidImages" value="{f1008c6c-6b78-4876-93d1-b84e9a83c010}" >
<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>
After:
<?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="guidVSIXProject1Package">
<Menus>
<Menu guid="guidVSIXProject1PackageCmdSet" id="TopLevelMenu" priority="0x700" type="Menu">
<Parent guid="guidSHLMainMenu" id="IDG_VS_MM_TOOLSADDINS" /> <!--only change this id-->
<Strings>
<ButtonText>TestMenu</ButtonText>
<CommandName>TestMenu</CommandName>
</Strings>
</Menu>
</Menus>
<!--same with before-->
</CommandTable>
You should sets <Parent guid="guidSHLMainMenu" id="IDM_VS_CTXT_SOLNNODE" /> in one group instead of one menu.
Change it from:
<Groups>
<Group guid="guidVSIXProject1PackageCmdSet" id="MyMenuGroup" priority="0x0600">
<Parent guid="guidVSIXProject1PackageCmdSet" id="TopLevelMenu"/>
</Group>
</Groups>
To:
<Groups>
<Group guid="guidVSIXProject2PackageCmdSet" id="MyMenuGroup" priority="0x0600">
<!--<Parent guid="guidVSIXProject2PackageCmdSet" id="TopLevelMenu"/>-->
<Parent guid="guidSHLMainMenu" id="IDM_VS_CTXT_SOLNNODE"/>
</Group>
</Groups>
This will move your menu from Extensions top menu to Solution context(right-click solution).
But this also means you can't find the command from top-menu any more, if you want to make the command available both in Top-menu and Solution context, please consider using CommandPlacements.

Adding a button to account entity homepage's ribbon/command bar

Playing with the ribbon, I tried to add a button over the account entity homepage's ribbon/command bar, just before the +New button. But it is not showing anywhere over the page. What am I missing?
This is the sample XML I've coded after reading the SDK.
<RibbonDiffXml>
<CustomActions>
<CustomAction Id="Bee.CustomAction.GoToUrl" Location="Mscrm.HomepageGrid.account.MainTab.Management.Controls._children">
<CommandUIDefinition>
<Button Id="Bee.HomepageGrid.account.GoToUrl" Command="Bee.CommandDefinition.GoToUrl" LabelText="Go To URL" ToolTipDescription="Description, Go to URL with selected account" ToolTipTitle="Title, Go to URL with selected account" />
</CommandUIDefinition>
</CustomAction>
</CustomActions>
<Templates>
<RibbonTemplates Id="Mscrm.Templates"></RibbonTemplates>
</Templates>
<CommandDefinitions>
<CommandDefinition Id="Bee.CommandDefinition.GoToUrl">
<EnableRules>
<EnableRule Id="Bee.EnableRule.SelectionCountOne" />
</EnableRules>
<DisplayRules>
<DisplayRule Id="Bee.DisplayRule.AllClients"/>
</DisplayRules>
<Actions>
<Url Address="http://localhost/mysite" PassParams="true"></Url>
</Actions>
</CommandDefinition>
</CommandDefinitions>
<RuleDefinitions>
<TabDisplayRules />
<DisplayRules>
<DisplayRule Id="Bee.DisplayRule.AllClients">
<CommandClientTypeRule Type="Modern" />
<CommandClientTypeRule Type="Refresh" />
<CommandClientTypeRule Type="Legacy" />
</DisplayRule>
</DisplayRules>
<EnableRules>
<EnableRule Id="Bee.EnableRule.SelectionCountOne">
<SelectionCountRule Minimum="1" Maximum="1" AppliesTo="SelectedEntity" />
</EnableRule>
</EnableRules>
</RuleDefinitions>
<LocLabels />
</RibbonDiffXml>
I just apply one CommandClientTypeRule Type="Refresh", it works. Again apply all three types not working. All have different meanings as below.
Modern: The command bar is presented using Microsoft Dynamics CRM for tablets.
Refresh: The command bar is presented using the updated user interface.
Legacy: The ribbon is presented in forms for entities that were not updated or in a list view in Microsoft Dynamics CRM for Microsoft Office Outlook.
<DisplayRules>
<DisplayRule Id="Bee.DisplayRule.AllClients">
<CommandClientTypeRule Type="Refresh" />
</DisplayRule>
</DisplayRules>
But Go to url button goes to overflow section means in the drop down hidden menu.
Displaying the button on command bar before NEW button apply some sequence, following is RibbonXml that show the button just before NEW button, when one record is selected.
<RibbonDiffXml>
<CustomActions>
<CustomAction Id="Bee.CustomAction.GoToUrl" Location="Mscrm.HomepageGrid.account.MainTab.Management.Controls._children" Sequence="5">
<CommandUIDefinition>
<Button Id="Bee.HomepageGrid.account.GoToUrl"
LabelText="Go To URL"
ToolTipDescription="Description, Go to URL with selected account"
ToolTipTitle="Title, Go to URL with selected account"
Alt="Go to"
Command="Bee.CommandDefinition.GoToUrl"
Sequence="5"
TemplateAlias="o1" />
</CommandUIDefinition>
</CustomAction>
</CustomActions>
<Templates>
<RibbonTemplates Id="Mscrm.Templates"></RibbonTemplates>
</Templates>
<CommandDefinitions>
<CommandDefinition Id="Bee.CommandDefinition.GoToUrl">
<EnableRules>
<EnableRule Id="Bee.EnableRule.SelectionCountOne" />
</EnableRules>
<DisplayRules>
<DisplayRule Id="Bee.DisplayRule.AllClients"/>
</DisplayRules>
<Actions>
<Url Address="http://localhost/mysite" PassParams="true"></Url>
</Actions>
</CommandDefinition>
</CommandDefinitions>
<RuleDefinitions>
<TabDisplayRules />
<DisplayRules>
<DisplayRule Id="Bee.DisplayRule.AllClients">
<CommandClientTypeRule Type="Refresh" />
</DisplayRule>
</DisplayRules>
<EnableRules>
<EnableRule Id="Bee.EnableRule.SelectionCountOne">
<SelectionCountRule Minimum="1" Maximum="1" AppliesTo="SelectedEntity" />
</EnableRule>
</EnableRules>
</RuleDefinitions>
<LocLabels/>
</RibbonDiffXml>
I would suggest you to try Ribbon Workbench. You don't need to download/extract/modify/pack/import anymore. Everything is done directly from Dynamics CRM and without any knowledge of XML.
You should add LocLabels to your RibbonDiffXml. Attribute LabelText a.o. must hold references to these localized labels. They are not meant to hold the texts themselves.
Look on CodePlex for some fine ribbon editors; they will give you a good start!

What is the "Organize Usings" menu ID in Visual Studio 2010?

I'm creating a Visual Studio 2010 extension using a Package template, not an Add-in.
I want to add a menu item to the "Organize Usings" menu group that appears when you right-click in a .cs file. To do this, I need the guid and the id of that menu group.
<Button guid="myCmdSet" id="myButton" priority="0x0100" type="Button">
<Parent guid="guidSHLMainMenu (I think?)" id="???" />
<Icon guid="guidImages" id="bmpPic1" />
<Strings>
<CommandName>myCommand</CommandName>
<ButtonText>Do Stuff</ButtonText>
</Strings>
</Button>
I have looked here and here and here. Basically all around MSDN. Are these published, and does anyone know what they are?
EDIT: I found the related menu via this method, but I still don't have a way to find the menu group GUID/ID, which is what I really want.
OMG, I've spend 3 hours on this :D Here's the solution:
<?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"/>
<Extern href="msobtnid.h"/>
<Commands package="guidVSPackage1Pkg">
<Buttons>
<Button guid="guidCSharpGrpId" id="mySuperCommand" priority="0x0200" type="Button">
<Parent guid="guidCSharpGrpId" id="IDG_CSHARP_CTX_ORGANIZE" />
<Icon guid="guidImages" id="bmpPic1" />
<Strings>
<CommandName>mySuperCommand</CommandName>
<ButtonText>My super command</ButtonText>
</Strings>
</Button>
</Buttons>
<Bitmaps>
<Bitmap guid="guidImages" href="Resources\Images_32bit.bmp" usedList="bmpPic1, bmpPic2, bmpPicSearch, bmpPicX, bmpPicArrows"/>
</Bitmaps>
</Commands>
<Symbols>
<!-- This is the package guid. -->
<GuidSymbol name="guidVSPackage1Pkg" value="{F066e284-dcab-11d2-b551-00c04f68d4db}" />
<GuidSymbol name="guidCSharpGrpId" value="{5d7e7f65-a63f-46ee-84f1-990b2cab23f9}">
<IDSymbol name="IDG_CSHARP_CTX_ORGANIZE" value="0x3618" />
<IDSymbol name="mySuperCommand" value="0x0100" />
</GuidSymbol>
<GuidSymbol name="guidImages" value="{cff24f4c-767f-48ee-aff4-6bdf8218cba0}" >
<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" />
</GuidSymbol>
</Symbols>
</CommandTable>
You must place guidCSharpGrpId and IDG_CSHARP_CTX_ORGANIZE because they're not available in "standard" set of id's. By "standard" I'mean those placed in VisualStudioIntegration\Common\Inc directory within *.h files. They're hidden in cslangsvcui.dll library.
To get these ID's I've used VS Command Table PowerToy. You can download it from here:
http://archive.msdn.microsoft.com/VSCTPowerToy
Check this also as this thread:
http://social.msdn.microsoft.com/Forums/en-US/vsx/thread/697245ac-1596-4d6a-b55c-f5b01b69a583
In case that this solution won't work for you because some guids, etc. I've put zipped project on my SkyDrive:
https://skydrive.live.com/#cid=6A19F3A9B7B8E017&id=6A19F3A9B7B8E017!16486
Hope this helps :)

Resources