Visual Studio Extensibility ForumDiscuss Visual Studio Extensibility (VSX), including the Visual Studio SDK, Text Templates (T4), add-ins, and macros.© 2009 Microsoft Corporation. All rights reserved.Wed, 25 Nov 2009 22:38:53 Za6b3f7be-4a18-4637-a55a-41b5596cd903http://social.msdn.microsoft.com/Forums/en-US/vsx/thread/e447f8b4-669a-4f7a-b99c-8972d606b399http://social.msdn.microsoft.com/Forums/en-US/vsx/thread/e447f8b4-669a-4f7a-b99c-8972d606b399davija001http://social.msdn.microsoft.com/Profile/en-US/?user=davija001BeforeExecute and AfterExecute events not getting called as expected.I'm working with a visual studio 2008 package and am having a little bit of difficulty subscribing to command events.  First, the msdn documentation claims that the Events interface in dte.Events has a CommandEvents property, but it doesn't appear to be accessible.  I've had to use dte.Events.get_CommandEvents(guid, id) instead. <div><br/></div> <div>Here is a small snippet of code from my project:</div> <div> <pre lang="x-c#">protected override void Initialize() { dte = (DTE) GetGlobalService(typeof(DTE)); dte.Events.get_CommandEvents(&quot;{5EFC7975-14BC-11CF-9B2B-00AA00573819}&quot;, 224).BeforeExecute += new _dispCommandEvents_BeforeExecuteEventHandler(commandEvents_BeforeExecute); } private void commandEvents_BeforeExecute(string guid, int id, object customIn, object customOut, ref bool CancelDefault) { MessageBox.Show(String.Format( &quot;GUID: {0}\nID: {1}\nIn: {2}\nOut: {3}&quot;, guid, id, customIn.GetType(), customOut.GetType())); }</pre> As I understand it, the commandEvents_BeforeEvents() method should be fired after the File.SaveAll command gets executed.  However, I never get any such events.</div> <div><br/></div> <div>I have also tried:</div> <div> <pre lang="x-c#">dte.Events.get_CommandEvents(&quot;&quot;, 0).BeforeExecute += new _dispCommandEvents_BeforeExecuteEventHandler(commandEvents_BeforeExecute);</pre> which is supposed to subscribe to all events from what I have read.</div> <div><br/></div> <div>Is there something that I'm missing as to why I'm not getting these events?  Any help would be appreciated.  Thanks.</div> <div><br/></div> <div>My env:</div> <div>Windows XP SP3</div> <div>Visual Studio 2008 Professional SP1 </div> <div>Visual Studio package is being written in C#</div>Wed, 25 Nov 2009 22:38:52 Z2009-11-25T22:38:53Zhttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/a903e59e-675f-48ec-bdd1-0bc093d1add1http://social.msdn.microsoft.com/Forums/en-US/vsx/thread/a903e59e-675f-48ec-bdd1-0bc093d1add1Fei.http://social.msdn.microsoft.com/Profile/en-US/?user=Fei.How to show modified status, "*", on my addin tool window?I created an addin to show a tool window, in which I added some treeView control to edit some data. The data item is not listed in solution explorer tree, just some of my internal data.<br/><br/>Now my question is, how to show a (*) on the title of my tool window when the data is modified, so that when the tool window is closing, a dialog box will prompt to let the user save/not save/cancel the modification? The prompt dialog should be similar to the &quot;Save changes to the following items&quot; Yes/No/Cancel dialog box when in VS2008 a code window is closing.<br/><br/>It seems that I need a custom editor. There are lots of sample <strong>packages</strong> doing this, but my project is an <strong>addin</strong> in c#.<br/><br/>Is it related to runing document table (RDT) ?<br/><br/>I searched in this forum and found that I might use IVsPersistDocData, IPersistFileFormat. But my data is some internal data, not an independed file, not listed in solution explorer tree.<br/><br/>Please help!<br/>--<br/>Edit:<br/>I'm sorry I was not clear.<br/>I want to use some interface or implement some interface so that I can notify VSShell my data is modified and let VSShell display as (*) at the title automatically, just same as the code editor window.<br/> <hr class=sig> c# new learnerMon, 16 Nov 2009 06:14:11 Z2009-11-25T21:27:55Zhttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/f23d6bfa-2cd8-488f-aa3a-07970e40b247http://social.msdn.microsoft.com/Forums/en-US/vsx/thread/f23d6bfa-2cd8-488f-aa3a-07970e40b247Chr. Weinerthttp://social.msdn.microsoft.com/Profile/en-US/?user=Chr.%20WeinertEnvDTE - ProjectItem - FileCodeModel: How to create Method bodyHi everyone,<br/>I tried to generate some classes out of my VS Add-In. Therefore i created a new ProjectItem. Now I want to create a Class with a few methods.<br/><br/>I can add a Namespace to the FileCodeModel of the ProjectItem. After this, i create a new Class througth the AddClass-Method of the Namespace-Instance. The Class provides a method to create a function, but then there is no way (or I can´t find it) to create the body of the function.<br/><br/>Has anyone tried this and can make some suggestions?<br/><br/>Best Regards<br/>Chris<br/>Thu, 23 Jul 2009 13:33:23 Z2009-11-25T20:53:50Zhttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/4d4b768f-63a5-4eb2-9dc4-d5b9e64b6500http://social.msdn.microsoft.com/Forums/en-US/vsx/thread/4d4b768f-63a5-4eb2-9dc4-d5b9e64b6500shankzzhttp://social.msdn.microsoft.com/Profile/en-US/?user=shankzzAdd new menu item on right-click of a file in Solution ExplorerHi all,<br/> <br/> I am using VS2008 SDK and I have been able to add a new menu item to the right-click on a file in the solution explorer using         <br/> &lt;Parent guid=&quot;guidSHLMainMenu&quot; id=&quot;IDM_VS_CTXT_ITEMNODE&quot; /&gt; <br/> in the vsct file and defining proper group and button.<br/> <br/> Now I want to achieve the following two things:<br/> 1. enable or disable this item based on the file type (for example, this item should be enabled only for asmx files)<br/> 2. get the file name of the file that I right-clicked<br/> <br/> Any pointers would be very helpful!<br/> <br/> Thanks in advance,<br/> ShankarSat, 14 Nov 2009 19:44:57 Z2009-11-25T17:18:53Zhttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/29124bbe-c741-4000-b785-9e71d726b7achttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/29124bbe-c741-4000-b785-9e71d726b7acKaruna Kumarhttp://social.msdn.microsoft.com/Profile/en-US/?user=Karuna%20KumarHow to do new add-in for visual studion solution explorerHi,<br/><br/>I need a help in customizing context menu in visual studio solution explorer.  If i right click on a folder in explorer, then i should add a new menu called Import. if i click on import then a file will be imported to that folder. and the user should able to right click on the file so that there should be new menu called Publish.<br/><br/>All i need to do is customize my solution explorer to add new menus's etc.<br/><br/>How can i do this. please any bosy suggest me?<br/><br/>Thanks,<br/>KarunaWed, 25 Nov 2009 17:08:59 Z2009-11-25T17:09:00Zhttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/18fd6b24-74eb-4175-921d-3b73c35ea56chttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/18fd6b24-74eb-4175-921d-3b73c35ea56cAltabearhttp://social.msdn.microsoft.com/Profile/en-US/?user=AltabearNo Visual C++ Project Is Loaded "appeared"Hi,<br/>One of our currently operating web projects, written in vb.net suddenly shows &quot;No Visual C++ Project Is Loaded&quot; when I try to look at the property manager.<br/><br/>How can I get rid of this, and see my normal vb.net property manager?<br/><br/>thanks<br/>DavidTue, 24 Nov 2009 23:48:57 Z2009-11-25T16:10:17Zhttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/3004ce13-b8fd-434b-bad9-c84633eeab93http://social.msdn.microsoft.com/Forums/en-US/vsx/thread/3004ce13-b8fd-434b-bad9-c84633eeab93davija001http://social.msdn.microsoft.com/Profile/en-US/?user=davija001What is the proper way to register a custom build logger for use within Visual Studio (Microsoft.Build.BuildEngine.Engine)I'm currently working on trying to build a custom logger into the build process.  However, I seem to be running into a few hiccups. <div><br/></div> <div>Here is my environment:</div> <div>Windows XP Pro SP3</div> <div>Visual Studio 2008 Pro SP 1</div> <div>Project is a Visual Studio SDK Package (C#) auto loaded in the VSConstants.UICONTEXT_SolutionExists profile.</div> <div><br/></div> <div>I have defined a custom logger derived from the Logger class that is much the same as the one listed in the examples on the msdn page (FileBuilder).</div> <div>My logger subscribes to all of the build events in the eventsSource object.</div> <div><br/></div> <div>In the Initialize method of the main package, I added the following:</div> <div><br/></div> <div style="color:Black;background-color:White"> <pre>Microsoft.Build.BuildEngine.Engine.GlobalEngine.RegisterLogger(<span style="color:Blue">new</span> BuildLogger(<span style="color:Blue">this</span>)); </pre> </div> <br/> <div>When I run it, the package initialize method is called when the solution is loaded (as expected).  However, the logger gets a build started/finished message even though a build was not run.  After that, any build actions I attempt to perform don't send events to my logger.</div> <div><br/></div> <div>I also noticed that according to the documentation on the Logger class, the Initialize method is supposed to be called before each build.  This call only ever happens once.</div> <div><br/></div> <div>It almost seems like the build engine instance that the solution is using didn't get the logger registration.</div> <div><br/></div> <div> <div>Am I missing something here?</div> <div><br/></div> </div>Tue, 24 Nov 2009 02:06:17 Z2009-11-25T15:50:50Zhttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/097fffaa-52de-4d82-bc68-a159184ae44ehttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/097fffaa-52de-4d82-bc68-a159184ae44eSubtleThttp://social.msdn.microsoft.com/Profile/en-US/?user=SubtleTVS2005, VC++, Code GenerationHi All,<br/><br/>I'm working on a pure C++ (Unmanaged) project.<br/>I use Visual Studio 2005 extensively for all development.<br/><br/>Now, my requirement concerns automatic code generation.<br/><br/>I know that in C# projects, I can write my own Code generator dll (using <span style="font-size:x-small;color:#008080"><span style="font-size:x-small;color:#008080">BaseCodeGeneratorWithSite</span></span>),<br/>and then associate my input file with the generator through the 'Custom Tool' property.<br/><br/>I wanted to achieve the same functionality in C++ (unmanaged) projects.<br/><br/>I have tried to explore my options and have come across CodeDom and T4, but I'm super-confused :)<br/><br/>Any help would be welcomed!<br/><br/>Regards,<br/>SubtleTWed, 25 Nov 2009 13:15:58 Z2009-11-25T13:15:59Zhttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/4cc74f9e-1949-43ba-8407-934f6664167dhttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/4cc74f9e-1949-43ba-8407-934f6664167dStefan Vallasterhttp://social.msdn.microsoft.com/Profile/en-US/?user=Stefan%20Vallaster[Dsl Tools] Has custom source Connector behaviour is strangeHi,<br><br>I'm using the Has custom source option on a connector in my dsl. I have implemented the needed Methods. And the connection between the two shapes is working. However the routing behaviour of the connector is strange. If a new connection is made the source shape is enlarged and it's also very difficult to resize the connected shapes?<br><br>Do I have to override or implement some aditional methods?<br><br>Regards<br>Stefan<br> Thu, 28 Aug 2008 12:37:14 Z2009-11-25T13:15:22Zhttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/6b688f8c-1008-4796-a551-cbdeed506c05http://social.msdn.microsoft.com/Forums/en-US/vsx/thread/6b688f8c-1008-4796-a551-cbdeed506c05allenmpcxhttp://social.msdn.microsoft.com/Profile/en-US/?user=allenmpcxGettings controls contained on form from DTE object<p>Right now I have code to obtain a DTE from a progID:<br/><span style="font-size:x-small"><br/></span></p> <pre lang="x-c#">public const string VS2008_ProgID = &quot;VisualStudio.DTE.9.0&quot;; public static object GetVisualStudioObject() { Type typeFromProgID = Type.GetTypeFromProgID(VS2008_ProgID); return Activator.CreateInstance(typeFromProgID); }</pre> <p>I navigate through the solution getting the projects, and then getting the project items. When I come across a project item that could be a control:</p> <pre lang="x-c#">ProjectItem.Object is VSLangProj.VSProjectItem &amp;&amp; ProjectItem.Name.EndsWith(&quot;.cs&quot;)</pre> <p>I open the primary window:<span style="font-size:x-small"><span style="font-size:x-small"> </span></span></p> <pre lang="x-c#">ProjectItem.Open(EnvDTE.Constants.vsViewKindPrimary);</pre> <p>Then, I obtain the designer host:</p> <pre lang="x-c#">IDesignerHost host = ProjectItem.Document.ActiveWindow.Object as IDesignerHost; host.Activate();</pre> <p>Then, I cast the root component to a control:</p> <pre lang="x-c#">Control control = host.RootComponent as Control;</pre> <p>This all works fine without error, but when I try to access Control.Controls.Count, I get the following exception:<br/><br/># An error occured (components): System.Runtime.Remoting.RemotingException: This<br/> remoting proxy has no channel sink which means either the server has no registe<br/>red server channels that are listening, or this application has no suitable clie<br/>nt channel to talk to the server.<br/>   at System.Runtime.Remoting.Proxies.RemotingProxy.InternalInvoke(IMethodCallMe<br/>ssage reqMcmMsg, Boolean useDispatchMessage, Int32 callType)<br/>   at System.Runtime.Remoting.Proxies.RemotingProxy.Invoke(IMessage reqMsg)<br/>   at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData&amp; msgDa<br/>ta, Int32 type)<br/>   at System.Windows.Forms.Control.get_Controls()<br/><br/>How could I go about listing the controls that a Form or UserControl has on it?</p>Mon, 23 Nov 2009 23:37:23 Z2009-11-25T11:44:51Zhttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/cb6dc6cf-dca2-4340-aaba-9a0ce3f5f8d4http://social.msdn.microsoft.com/Forums/en-US/vsx/thread/cb6dc6cf-dca2-4340-aaba-9a0ce3f5f8d4Vivek E, Guptahttp://social.msdn.microsoft.com/Profile/en-US/?user=Vivek%20E%2c%20Gupta Error on trying to create add-in in VS 2008<div style="color:Black;background-color:White"> <pre> e&lt;pre&gt; Hi, <span>I have been trying to create a plugin in Visual studio 2008 in C#. In this plugin I am trying to create a Tol Window with a user control.The user control is present in the same solution as that of add-in.Every time I try to execute the addin, I get the error , 'The addin supporting this command could not be loaded'. On reading previous similar posts on this issue, I understand that such issues occur when the required dll or assembly is not found.So I executed the command devenv.exe /resetaddin also,but still no use.Please tell me what else can be the issue or what else can I debug to solve the same. Please find the code for your reference._</span> Regards, Vivek Gupta </pre> </div> <span>_</span> lse if (connectMode == ext_ConnectMode.ext_cm_AfterStartup) { #region Load Tool Window object programmableObject = null; string guidString = &quot;{35AB1E0D-9016-44c6-A284-6083C91D12CA}&quot;; Windows2 windows2 = (Windows2)_applicationObject.Windows; Assembly asm = Assembly.GetExecutingAssembly(); toolWindow = windows2.CreateToolWindow2(_addInInstance, asm.Location, &quot;ToolWindowArticle.ToolWindowControl&quot;, &quot;Pirate Window&quot;, guidString, ref programmableObject); toolWindow.Visible = true; toolWindowControl = (ToolWindowControl)toolWindow.Object; toolWindowControl.ApplicationObject = _applicationObject; #endregion } <span>_</span>Mon, 23 Nov 2009 05:25:37 Z2009-11-25T11:33:37Zhttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/9f47ebeb-1711-4e39-abe7-32314c879902http://social.msdn.microsoft.com/Forums/en-US/vsx/thread/9f47ebeb-1711-4e39-abe7-32314c879902JustNodhttp://social.msdn.microsoft.com/Profile/en-US/?user=JustNodEnumerate target file system of setup/deployment project using DTECan I use the DTE object to enumerate and manipulate the target file system of a Setup and Deployment package? It would appear that the files referenced by the target file system are not part of the ProjectItems collection and, although I can access the File System window, there don't seem to be any objects, properties or collections that expose what I need.<br/><br/>I am using Visual Studio 2005.<br/>Tue, 24 Nov 2009 09:44:00 Z2009-11-25T11:27:03Zhttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/f82b8f3b-9616-464f-9662-64dd08bdfc26http://social.msdn.microsoft.com/Forums/en-US/vsx/thread/f82b8f3b-9616-464f-9662-64dd08bdfc26creative_cathttp://social.msdn.microsoft.com/Profile/en-US/?user=creative_catCustomizing the project settings pageHi,<br/><br/>Does anyone know of a sample or code snippet that allows me to customize the project settings page for a custom project type.<br/><br/>By default, all the public properties defined in my property page (derived from the MPF SettingsPage class) and bound to a property grid.<br/><br/>I need to display a custom control with textboxes and such in my SettingsPage that allows user to edit project specific properties using the custom control rather than through the property grid.  (Similar to the C# project settings pages)<br/><br/>Any pointers to a samples or code snippets that telsl me how to do this is most welcome,<br/><br/>Thanks,<br/>CCTue, 24 Nov 2009 04:49:34 Z2009-11-25T11:25:53Zhttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/df34c5bd-51f0-45ff-a10c-fac0800f3714http://social.msdn.microsoft.com/Forums/en-US/vsx/thread/df34c5bd-51f0-45ff-a10c-fac0800f3714Vicky2006http://social.msdn.microsoft.com/Profile/en-US/?user=Vicky2006Tool window is not visible in AddInHi ,<br/><br/>I am using VS 2008 and creating the tool window as follows<br/><br/><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> <p>object</p> <p> <p> </p> </p> </span></span></span></span><span style="font-size:x-small">programmableObject = </span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">null</span></span><span style="font-size:x-small">;<span style="font-size:x-small"> </span></span> <p> </p> <p><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">string</span></span><span style="font-size:x-small"> guidString = </span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">&quot;{9FFC9D9B-1F39-4763-A2AF-66AED06C799E}&quot;</span></span><span style="font-size:x-small">; </span><span style="font-size:x-small;color:#008000"><span style="font-size:x-small;color:#008000">//Guid.NewGuid().ToString(&quot;B&quot;);// &quot;{9FFC9D9B-1F39-4763-A2AF-66AED06C799E}&quot;;</span></span></p> <span style="font-size:x-small"><span style="font-size:x-small"> <p> </p> </span></span> <p><span style="font-size:x-small;color:#2b91af"><span style="font-size:x-small;color:#2b91af">Windows2</span></span><span style="font-size:x-small"> windows2 = (</span><span style="font-size:x-small;color:#2b91af"><span style="font-size:x-small;color:#2b91af">Windows2</span></span><span style="font-size:x-small">)DTE.Windows;<span style="font-size:x-small"> <p> </p> </span></span> <p> </p> <p><span style="font-size:x-small;color:#2b91af"><span style="font-size:x-small;color:#2b91af">Assembly</span></span><span style="font-size:x-small"> asm = </span><span style="font-size:x-small;color:#2b91af"><span style="font-size:x-small;color:#2b91af">Assembly</span></span><span style="font-size:x-small">.GetExecutingAssembly();<span style="font-size:x-small"> <p>ImageToolWindow = windows2.CreateToolWindow2(addInInstance, asm.Location,</p> </span></span> <p> </p> <p><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">&quot;AddInExample.ToolWindowControl&quot;</span></span><span style="font-size:x-small">, </span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">&quot;Pirate Window&quot;</span></span><span style="font-size:x-small">, guidString, </span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">ref</span></span><span style="font-size:x-small"> programmableObject); </span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">&quot;Watch&quot;</span></span><span style="font-size:x-small">; </span> <p> </p> <p><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">if</span></span><span style="font-size:x-small"> (ImageToolWindow != </span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">null</span></span><span style="font-size:x-small">) </span> <p> </p> <p><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">true</span></span><span style="font-size:x-small">;<span style="font-size:x-small"> <p>ImageToolWindow.Linkable =</p> </span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">true</span></span><span style="font-size:x-small">;</span></p> <span style="font-size:x-small"> <p> </p> <p>}</p> <p> </p> </span><span style="font-size:x-small"><span style="font-size:x-small"> <p>toolWindowControl = (</p> <p> </p> <p>toolWindowControl.applicationObject = DTE;</p> <p> </p> </span></span><span style="font-size:x-small;color:#2b91af"><span style="font-size:x-small;color:#2b91af">ToolWindowControl</span></span><span style="font-size:x-small">)ImageToolWindow.Object; </span> <p> </p> <span style="font-size:x-small"> <p> </p> <span style="font-size:x-small"> <p>ImageToolWindow.Visible =</p> </span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">true</span></span><span style="font-size:x-small">;<br/><br/>when i try to run the addIn sometimes the toolwindow is created but is not shown in the VS IDE.<br/><br/>if i create guidString using <span style="color:#008000">Guid.NewGuid().ToString(&quot;B&quot;); then tool window will be visible <br/>but it needs to be docked manually to bottom of the screen.<br/>Can any one tell me what is going wrong in the above code. and How to programmatically dock the tool window</span></span></p> <p>{</p> <span style="font-size:x-small"> <p>ImageToolWindow.Visible =</p> </span></p> <p> </p> <span style="font-size:x-small"> <p>ImageToolWindow.Caption =</p> <p> </p> <span style="font-size:x-small"> <p> </p> </span></span></p> </p>Tue, 24 Nov 2009 02:58:40 Z2009-11-25T11:21:50Zhttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/0261c3ef-6cee-41e4-bde8-2ea6c362a3d8http://social.msdn.microsoft.com/Forums/en-US/vsx/thread/0261c3ef-6cee-41e4-bde8-2ea6c362a3d8Naynahttp://social.msdn.microsoft.com/Profile/en-US/?user=Naynahow to get list of types in namespace spread across different files using CodeNamespace? Hi,<br/><br/>I am developing a VSPackage in C# language VS 2005.<br/><br/>I want to get a list of all types under a particular namespace, where the types are present in different files, but under the same namespace.<br/>Does CodeNamespace interface provide information about this?<br/>The collection attribute in CodeNamespace interface shows only the current file's types. It does not include types present under other files.<br/><br/>So how can i get list of types under a particular namespace using codeModel(spread across different files)?<br/><br/>Thanks,<br/>NaynaTue, 24 Nov 2009 04:40:21 Z2009-11-25T11:12:39Zhttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/328a10dc-690e-4bd5-a5fb-f7681d72595chttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/328a10dc-690e-4bd5-a5fb-f7681d72595cNaynahttp://social.msdn.microsoft.com/Profile/en-US/?user=Naynahow to get references of a project using code element or code model?Hi,<br/><br/>I am developing a VSPackage in C# language.<br/><br/>i want to get information about the reference made in a particular project using code model.<br/>the project item in codeElement interface does not give any information about the references made in the project.<br/><br/>is there a way which will help me get this references information using codeModel or codeElement?<br/>or any alternative ways?<br/><br/>Thanks,<br/>NayanaWed, 25 Nov 2009 08:58:42 Z2009-11-25T11:10:11Zhttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/222cffb9-5d65-4815-8bd3-6c867bebba73http://social.msdn.microsoft.com/Forums/en-US/vsx/thread/222cffb9-5d65-4815-8bd3-6c867bebba73Sergiy Byelozyorovhttp://social.msdn.microsoft.com/Profile/en-US/?user=Sergiy%20ByelozyorovMacro: how to create a macro to run without build?I have big project, which takes to build one hour and half. Even if there were no changes it always recompiles some files which takes around 3-5 minutes. I don't want the project to compile if there were no changes or sometimes even after I made some changes (just run last-compiled executable). Whenever I press the &quot;Run&quot; button, I am offered a prompt window with a choice whether I want to build the project or not. <div><br/></div> <div>This works just fine, but I would like to avoid extra clicking and write a macro (an set up hot key for it) which will compile changes in project and run new executable and another macro which will just run the last-compile executable. However Macro Recorder does not remember my choice in prompt window and I still have to click that button... can I automate this somehow?</div>Sun, 22 Nov 2009 18:03:29 Z2009-11-25T10:46:34Zhttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/ff0b7129-aad4-4ea7-b4c9-7edfb09abb58http://social.msdn.microsoft.com/Forums/en-US/vsx/thread/ff0b7129-aad4-4ea7-b4c9-7edfb09abb58mattman206http://social.msdn.microsoft.com/Profile/en-US/?user=mattman206Problems after installing Visual Studio 2008 SDKHey everyone,<br><br>I just ran into a nasty bug after installing Visual Studio 2008 SDK.  When I try to add new items to my control toolbar, Visual Studio dumps core and closes immediately.<br><br>Here's my setup:<br>Windows XP (fresh install last week with all updates and patches)<br>Visual Studio 2008 (i'm at university, so MSDNAA version)<br>Visual Studio 2008 SDK<br><br>In an attempt to troubleshoot, I started up devenv with the /safemode command-line flag.  It didn't load any addins, and let me try to add components to my toolbar, but left 2 error messages before continuing successfully:<br><br>1) Microsoft Visual C++ Runtime Library<br> Program c:\Progr...<br>R6034 An application has made an attempt to load the C runtime library incorrectly.<br>Please contact the application's support team for more information.<br><br>2) Microsoft Visual Studio<br>The following assemblies are installed SDK assemblies but could not be shown in the customize toolbox dialog because they are missing one or more components. Please make sure that all the necessary libraries are available:<br>msvcm80.dll<br>NLogC.dll<br><br>Has anyone else encountered this problem?  Any ideas how I can fix it and/or get more information?  I'm really crippled without being able to add components to my toolbox...<br><br>-Matt<br><br>For the record, here's my complete &quot;Copy Info&quot; results:<br>Microsoft Visual Studio 2008<br>Version 9.0.21022.8 RTM<br>Microsoft .NET Framework<br>Version 3.5<br><br>Installed Edition: Professional<br><br>Microsoft Visual C# 2008   91605-270-4030266-60945<br>Microsoft Visual C# 2008<br><br>Microsoft Visual Studio 2008 Tools for Office   91605-270-4030266-60945<br>Microsoft Visual Studio 2008 Tools for Office<br><br>Microsoft Visual Web Developer 2008   91605-270-4030266-60945<br>Microsoft Visual Web Developer 2008<br><br>F# Research Compiler with Visual Studio 2003/2005 Integration   1.1<br>F# Research Compiler with Visual Studio 2003/2005 Integration. For more information about F#, see the Microsoft Research website at &lt;http://research.microsoft.com/fsharp&gt;. F# Copyright 2001-2005 Microsoft Corporation.<br><br>Visual Studio Package Load Analyzer   1.0<br>A utility that analyzes package load failures in Visual Studio.<br><br>GhostDoc for Visual Studio 2008<br>For more information about GhostDoc, see the GhostDoc website<br>at http://www.roland-weigelt.de/ghostdoc<br>Copyright © 2003-2007 Roland Weigelt.<br><br>TestDriven.NET 2.10.2172 Personal<br>For more information, see the TestDriven.NET website at http://www.testdriven.net/. Development by Jamie Cansdale &lt;jamie@mutantdesign.co.uk&gt;.  Copyright (c) 2002-2006 Mutant Design.<br><br>Sat, 22 Dec 2007 04:00:39 Z2009-11-25T09:15:38Zhttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/f8ab0669-bca6-4584-8afb-d589aa6fae2chttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/f8ab0669-bca6-4584-8afb-d589aa6fae2cstan_the_man21phhttp://social.msdn.microsoft.com/Profile/en-US/?user=stan_the_man21phHow to make jquery intellisense work with visual web developer expressHi,<br/> <br/>         Can anyone tell me how to make jquery intellisense work with visual web developer 2008 express edition?<br/> <br/> I followed some instructions to make it work like installing the hotfix(<span style="font-family:arial;font-size:x-small"><strong><span style="text-decoration:underline">Install VS 2008 Patch KB958502 to Support &quot;-vsdoc.js&quot; Intellisense Files</span> </strong> </span> ) for jquery intellisense, downloading(<span style="font-family:arial;font-size:x-small"><strong><span style="text-decoration:underline">jQuery-vsdoc.js file</span> </strong> </span> ) . Then on my project that I'm working on, placing the .js file on thesame directory as the jquery file. After doing all this, it still doesn't work?Tue, 24 Nov 2009 02:33:12 Z2009-11-25T05:50:15Zhttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/ec9ba121-5b0b-44f4-8f62-63bfbae36322http://social.msdn.microsoft.com/Forums/en-US/vsx/thread/ec9ba121-5b0b-44f4-8f62-63bfbae36322German Schuagerhttp://social.msdn.microsoft.com/Profile/en-US/?user=German%20SchuagerSlow ProjectItems.AddFromFileCopy with XAML filesHi, I'm working on a VS package where I'm generating several files and need to integrate those into a VS project. <div>I'm using ProjectItems.AddFromFileCopy to add each file into the newly created project.</div> <div>This is working fine, but the problem is that when this process integrates XAML files, it becomes painfully slow; other kind of files, like .cs, are not giving any problem and are fast enough.</div> <div><br/></div> <div>It seems that VS is doing some lenghty process for every XAML file that I'm adding to the solution.</div> <div><br/></div> <div>Is there any way to disable this behavior and to re-enable it when I'm done integrating all the files?</div> <div>Any other suggestion?</div> <div><br/></div> <div>Cheers,</div> <div>Germán.</div>Wed, 18 Nov 2009 17:31:35 Z2009-11-25T02:26:23Zhttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/23928a5b-1230-4495-b127-fd5a13107284http://social.msdn.microsoft.com/Forums/en-US/vsx/thread/23928a5b-1230-4495-b127-fd5a13107284Courtney de Lautourhttp://social.msdn.microsoft.com/Profile/en-US/?user=Courtney%20de%20LautourCan I add a file to a project at deisgin time *without* an addin?<span style="font-family:'Times New Roman';font-size:medium"> <div style="color:#000000;font-family:Verdana, Arial, Helvetica, sans-serif;font-size:67%;margin-top:8px;margin-right:8px;margin-bottom:8px;margin-left:8px;background-image:initial;background-repeat:initial;background-attachment:initial;background-color:#ffffff">I am looking into creating a control which will generate additional code from the within the form designer. I would like to be able to access the current project ( <a href="http://social.msdn.microsoft.com/Forums/en-GB/vsx/thread/9f4e1361-7a33-4cbe-9e54-4070757a4979">&quot;Is it possible to add file(s) into project using simple add-in&quot;</a>) without needing to have users install an add in before it can be used.<br/><br/>Is this at all possible?<br/><br/>Thanks<br/><br/>-Courtney</div> </span>Tue, 24 Nov 2009 02:44:59 Z2009-11-25T02:18:39Zhttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/53e06572-61e9-4c30-a806-2fc85b913b3chttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/53e06572-61e9-4c30-a806-2fc85b913b3cTomaszGrobelnyhttp://social.msdn.microsoft.com/Profile/en-US/?user=TomaszGrobelnyrunning custom tool programaticallyIn my add item wizard I modify resource file (Resources.resx). The problem is that when I build project the Resources.Designer.cs file is not updated. I see two options here:<br/> a) run custom tool from my wizard. I select an item and do:<br/>             foreach (SelectedItem si in dte.DTE.SelectedItems)<br/>                 MessageBox.Show(&quot;name: &quot; + si.Name); // this messagebox shows up so my item is in affact selected<br/>             dte.DTE.ExecuteCommand(&quot;Project.RunCustomTool&quot;, &quot;&quot;);<br/> But on ExecuteCommand I get COMException: &quot;Error HRESULT E_FAIL has been returned from a call to a COM component.&quot; Is there any way to get any more specific message? Or are there any common causes for this exception?<br/> b) mark the designer file as &quot;dirty&quot; so that it is regenerated on build. But I get no idea how to do this.Sun, 22 Nov 2009 22:21:33 Z2009-11-25T11:36:35Zhttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/cad717c4-3426-4d12-bfa8-8d609bf184f8http://social.msdn.microsoft.com/Forums/en-US/vsx/thread/cad717c4-3426-4d12-bfa8-8d609bf184f8JP Sondaghttp://social.msdn.microsoft.com/Profile/en-US/?user=JP%20SondagVSPackage PLK Verification FailsVisual Studio 2008 Professional<br/> <br/> I'm having the hardest time registering my package with visual studio. Here's what I have tried:<br/> <br/> I put this line above my packages class:<br/> <br/> <br/> &lt;code&gt;<br/>     [ProvideLoadKey(&quot;Standard&quot;, &quot;1.0&quot;, &quot;ClassName&quot;, &quot;CompanyName&quot;, 1)]<br/>     [ProvideMenuResource(1000, 1)]<br/>     [Guid(GuidList.guidClassNamePkgString)]<br/>     public sealed class ClassNamePackagePackage : Package<br/>     {<br/> &lt;/code&gt;<br/> <br/> The guid was automatically generated for me in Guids.cs <br/> <br/> &lt;code&gt;<br/>         public const string guidClassNamePkgString = &quot;693051d7-d3c2-48ba-93ef-37f473bc95c1&quot;;<br/>         public static readonly Guid guidClassNameCmdSet = new Guid(guidClassNameCmdSetString);<br/> &lt;/code&gt;<br/> <br/> I then went to this site: http://msdn.microsoft.com/en-us/vsx/cc655795.aspx and filed out CompanyName, PackageName, Guid (with the curly braces), Standard and 1.0 (those all came from above).  I put min version of visual studio as 2005 but I'm not sure where that is used?<br/> <br/> Anyways they gave me a PLK which I added to Resources.resx (which the package template made for me) with the key being &quot;1&quot; (even though I got a warning for that).<br/> <br/> I compiled and everything went well. I used regpkg.exe on the DLL and added the keys to my registry which I confirmed were indeed there and the same values that i put above.   I then copied all of my primary output to &lt;visual studio install&gt;\Common7\IDE\PrivateAssemblies.  Finally i ran devenv /setup.<br/> <br/> I started devnenv.exe and got the following error in the package analyzer:<br/> <br/> Package Load Key(PLK) verification failed for package {693051d7-d3c2-48ba-93ef-37f473bc95c1}.<br/> <br/> Plk verification was based on the following entries in the registry - <br/> CompanyName - CompanyName<br/> ProductName - ClassName<br/> ProductVersion - 1.0<br/> MinEdition - Standard<br/> ID - 1<br/> <br/> Finally i started up reflector.exe and loaded up my DLL and confirmed that for Resources.resx the PLK I got above was there for the key &quot;1&quot;.  <br/> <br/> Is there anything else I can do to debug this further? For example I would love to know exactly which DLL is being loaded in the package analyzer can I get the path? <br/> <br/> Any help is appreciated.<br/> <br/> --JP<br/> <br/>Wed, 18 Nov 2009 07:43:35 Z2009-11-24T23:00:46Zhttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/176e14b3-61af-4036-9caf-5fb201868204http://social.msdn.microsoft.com/Forums/en-US/vsx/thread/176e14b3-61af-4036-9caf-5fb201868204Carlimirhttp://social.msdn.microsoft.com/Profile/en-US/?user=CarlimirVS 2008 SDK dll's platformHello, I'm trying to call some MS VS2008 SDK assemblies (like Microsoft.VisualStudio.Modeling.SDK.dll, etc.) in Windows Azure. I'm getting the error: &quot;<em>Could not load file or assembly 'Microsoft.VisualStudio.Modeling.Sdk.Diagrams.GraphObject' or one of its dependencies. An attempt was made to load a program with an incorrect format&quot; </em>but I've got this assembly with all of its dependences as local copy in my project<em>.</em> Azure Forums guys said that it could be caused by trying to load a 32-bit DLL in Azure Platform (x64). Are these assemblies 32-bit?? Does VS 2008 SDK assemblies exist for x64 platforms??<br/><br/>Thanks a lot!!<br/><br/>Regards! Wed, 18 Nov 2009 11:46:34 Z2009-11-24T11:14:21Zhttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/60b7bc9b-186f-4f34-8033-405c2020633dhttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/60b7bc9b-186f-4f34-8033-405c2020633dAnkesh772http://social.msdn.microsoft.com/Profile/en-US/?user=Ankesh772How to open a custom window in the work area of Visual studio.Hi,<br/><br/>I am integrating Visual studio 2008 using VSIp. I have rendered a custom tool window with treeView control with some node. On click of tree view node ,I want to open a custom tabbed window (Similar to editor window or the window opened from clicking add bug under work items of source control) in the work area.I have gone through the CustomEditor creation through wizard but it is not sufficient.<br/><br/>Can any body help me.<br/><br/>Thanks,<br/><br/>Tue, 24 Nov 2009 10:25:39 Z2009-11-24T10:25:40Zhttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/7ea8fab2-37b7-44da-99ea-7c16819004a8http://social.msdn.microsoft.com/Forums/en-US/vsx/thread/7ea8fab2-37b7-44da-99ea-7c16819004a8Suidenhttp://social.msdn.microsoft.com/Profile/en-US/?user=SuidenMacro: How to change compiler version before build? (VS 2008)Hi,<br/> <br/> I am using Visual Studio 2008 SP1 in a C# project whose target framework is 2.0. I would also like to make sure the code does not contain any new language features from C# 3.0; if any of these are present I want the IDE to show them as errors after build (in the error list window).<br/> <br/> I found a way to do this by making a few changes to the csproj file:<br/> - tools version changed from 3.5 to <em>2.0</em> <br/> - disabled the host compiler: <em>&lt;UseHostCompilerIfAvailable&gt;false&lt;/UseHostCompilerIfAvailable&gt;</em> <br/> <br/> Unfortunately this can't be a permanent solution to my problem. Disabling the host compiler I lost that nice feature which enables IDE to spot errors in the open document on-the-fly, without building the project. I should keep the host compiler all the time except on build then... so I figured I needed a macro which would alter the csproj before build with the above settings and change it back after build.<br/> <br/> I tried to load the csproj as xml document, edit it and save, but on save the IDE complains the project has been modified outside the environment (which is not what I wanted, since the changes should be transparent). It would be great if someone could give me a hint on how to use the automation API to get this done.<br/> <br/> Thank you,<br/> SuidenSun, 22 Nov 2009 18:29:05 Z2009-11-24T04:59:27Zhttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/8d686400-10fc-4e41-95ca-fc43621ae9f9http://social.msdn.microsoft.com/Forums/en-US/vsx/thread/8d686400-10fc-4e41-95ca-fc43621ae9f9NadiaDChttp://social.msdn.microsoft.com/Profile/en-US/?user=NadiaDChow to modify .aspx page by using contnet page in asp.net<p>I'm trying to modify .aspx page using content page but I don't know how, is there anyone know?</p>Sun, 22 Nov 2009 17:26:01 Z2009-11-24T03:17:22Zhttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/a7012ea4-e95a-4432-a925-e458dbadbea0http://social.msdn.microsoft.com/Forums/en-US/vsx/thread/a7012ea4-e95a-4432-a925-e458dbadbea0jonjanghttp://social.msdn.microsoft.com/Profile/en-US/?user=jonjangDDEX for VS2008 issue -11<span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> <p>&lt;?</p> <p> </p> <p> </p> </span></span></span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">xml</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span><span style="font-size:x-small;color:#ff0000"><span style="font-size:x-small;color:#ff0000">version</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">=</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">1.0</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span><span style="font-size:x-small;color:#ff0000"><span style="font-size:x-small;color:#ff0000">encoding</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">=</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">utf-8</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">?&gt;<br/>&lt;</span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">DataObjectSupport</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span><span style="font-size:x-small;color:#ff0000"><span style="font-size:x-small;color:#ff0000">xmlns</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">=</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">http://schemas.microsoft.com/VisualStudio/2007/07/Data/DataObjectSupport</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<br/>&lt;</span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Types</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<br/>&lt;</span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">RootType</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<br/>&lt;</span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Properties</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<br/>&lt;</span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Property</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span><span style="font-size:x-small;color:#ff0000"><span style="font-size:x-small;color:#ff0000">name</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">=</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">Server</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span><span style="font-size:x-small;color:#ff0000"><span style="font-size:x-small;color:#ff0000">type</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">=</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">System.String</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">/&gt;<br/>&lt;</span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Property</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span><span style="font-size:x-small;color:#ff0000"><span style="font-size:x-small;color:#ff0000">name</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">=</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">Database</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span><span style="font-size:x-small;color:#ff0000"><span style="font-size:x-small;color:#ff0000">type</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">=</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">System.String</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> /&gt;<br/>&lt;/</span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Properties</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<br/>&lt;</span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Services</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<br/>&lt;</span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Service</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span><span style="font-size:x-small;color:#ff0000"><span style="font-size:x-small;color:#ff0000">type</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">=</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">IVsDataObjectSelector</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span><span style="font-size:x-small;color:#ff0000"><span style="font-size:x-small;color:#ff0000">implementationType</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">=</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">Microsoft.VisualStudio.Data.Framework.AdoDotNet.AdoDotNetObjectSelector, Microsoft.VisualStudio.Data.Framework, Version=9.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<br/>&lt;</span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Parameters</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span><span style="font-size:x-small;color:#ff0000"><span style="font-size:x-small;color:#ff0000">method</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">=</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">SelectObjects</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<br/>&lt;</span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Parameter</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span><span style="font-size:x-small;color:#ff0000"><span style="font-size:x-small;color:#ff0000">value</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">=</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">DATASOURCE</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> /&gt;<br/>&lt;</span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Parameter</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<br/>&lt;</span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Parameter</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span><span style="font-size:x-small;color:#ff0000"><span style="font-size:x-small;color:#ff0000">value</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">=</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">Server</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<br/>&lt;</span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Parameter</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span><span style="font-size:x-small;color:#ff0000"><span style="font-size:x-small;color:#ff0000">value</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">=</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">SERVER</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> /&gt;<br/>&lt;/</span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Parameter</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<br/>&lt;</span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Parameter</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span><span style="font-size:x-small;color:#ff0000"><span style="font-size:x-small;color:#ff0000">value</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">=</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">Database</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<br/>&lt;</span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Parameter</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span><span style="font-size:x-small;color:#ff0000"><span style="font-size:x-small;color:#ff0000">value</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">=</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">DATABASE</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> /&gt;<br/>&lt;/</span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Parameter</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<br/>&lt;/</span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Parameter</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<br/>&lt;/</span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Parameters</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<br/>&lt;/</span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Service</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> &gt;<br/>&lt;/</span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Services</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<br/>&lt;/</span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">RootType</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<br/></span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&lt;</span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Type</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span><span style="font-size:x-small;color:#ff0000"><span style="font-size:x-small;color:#ff0000">name</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">=</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">StoredProcedure</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span><span style="font-size:x-small;color:#ff0000"><span style="font-size:x-small;color:#ff0000">preferredOrdering</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">=</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">Name</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<br/>&lt;</span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Identifier</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<br/>&lt;</span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Part</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span><span style="font-size:x-small;color:#ff0000"><span style="font-size:x-small;color:#ff0000">name</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">=</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">Name</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> /&gt;<br/>&lt;/</span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Identifier</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<br/>&lt;</span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Properties</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<br/>&lt;</span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Property</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span><span style="font-size:x-small;color:#ff0000"><span style="font-size:x-small;color:#ff0000">name</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">=</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">Name</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span><span style="font-size:x-small;color:#ff0000"><span style="font-size:x-small;color:#ff0000">isIdentifierPart</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">=</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">true</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> /&gt;<br/>&lt;</span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Property</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span><span style="font-size:x-small;color:#ff0000"><span style="font-size:x-small;color:#ff0000">name</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">=</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">Type</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span><span style="font-size:x-small;color:#ff0000"><span style="font-size:x-small;color:#ff0000">type</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">=</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">System.String</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> /&gt;<br/>&lt;/</span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Properties</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<br/>&lt;</span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Services</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<br/>&lt;</span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Service</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span><span style="font-size:x-small;color:#ff0000"><span style="font-size:x-small;color:#ff0000">type</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">=</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">IVsDataObjectSelector</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span><span style="font-size:x-small;color:#ff0000"><span style="font-size:x-small;color:#ff0000">implementationType</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">=</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">Microsoft.VisualStudio.Data.Framework.AdoDotNet.AdoDotNetObjectSelector, Microsoft.VisualStudio.Data.Framework, Version=9.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<br/>&lt;</span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Parameters</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span><span style="font-size:x-small;color:#ff0000"><span style="font-size:x-small;color:#ff0000">method</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">=</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">SelectObjects</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<br/>&lt;</span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Parameter</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span><span style="font-size:x-small;color:#ff0000"><span style="font-size:x-small;color:#ff0000">value</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">=</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">Procedures</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">/&gt;<br/>&lt;</span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Parameter</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<br/>&lt;</span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Parameter</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span><span style="font-size:x-small;color:#ff0000"><span style="font-size:x-small;color:#ff0000">value</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">=</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">Name</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<br/>&lt;</span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Parameter</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span><span style="font-size:x-small;color:#ff0000"><span style="font-size:x-small;color:#ff0000">value</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">=</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">OBJECT_NAME</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">/&gt;<br/>&lt;/</span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Parameter</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> <br/>&lt;</span></span></span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Parameter</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span><span style="font-size:x-small;color:#ff0000"><span style="font-size:x-small;color:#ff0000">value</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">=</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">Type</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> <br/>&lt;</span></span></span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Parameter</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span><span style="font-size:x-small;color:#ff0000"><span style="font-size:x-small;color:#ff0000">value</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">=</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">OBJECT_TYPE</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">/&gt;<span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> <br/>&lt;/</span></span></span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Parameter</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> <br/>&lt;/</span></span></span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Parameter</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> <br/>&lt;/</span></span></span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Parameters</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> &gt;<span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> <br/>&lt;/</span></span></span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Service</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt; <br/><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&lt;</span></span></span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Service</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span><span style="font-size:x-small;color:#ff0000"><span style="font-size:x-small;color:#ff0000">type</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">=</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">IDSRefBuilder</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span></span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Parameters</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span><span style="font-size:x-small;color:#ff0000"><span style="font-size:x-small;color:#ff0000">method</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">=</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">AppendToDSRef</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span></span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Parameter</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span></span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Parameter</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span><span style="font-size:x-small;color:#ff0000"><span style="font-size:x-small;color:#ff0000">value</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">=</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">{2}</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> /&gt;<span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span></span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Parameter</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span><span style="font-size:x-small;color:#ff0000"><span style="font-size:x-small;color:#ff0000">value</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">=</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">{1}</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> /&gt;<span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span></span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Parameter</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span><span style="font-size:x-small;color:#ff0000"><span style="font-size:x-small;color:#ff0000">value</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">=</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">StoredProcedure</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> /&gt;<span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span></span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Parameter</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> /&gt;<span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span></span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Parameter</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt; </span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Parameter</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span><span style="font-size:x-small;color:#ff0000"><span style="font-size:x-small;color:#ff0000">value</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">=</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">39A5A7E7-513F-44a4-B79D-7652CD8962D9</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span></span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Parameter</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span><span style="font-size:x-small;color:#ff0000"><span style="font-size:x-small;color:#ff0000">value</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">=</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">401</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span><span style="font-size:x-small;color:#ff0000"><span style="font-size:x-small;color:#ff0000">type</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">=</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">System.Int32</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> /&gt; </span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Parameter</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span></span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Parameter</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span></span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Parameter</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span></span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Parameters</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span></span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Service</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span></span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Services</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span></span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Type</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span></span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Types</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span></span><span style="font-size:x-small;color:#0000ff"></span></span><span style="font-size:x-small;color:#008000"><span style="font-size:x-small;color:#008000">Mapped object types </span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">--&gt;<span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span></span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">MappedTypes</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt; </span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">MappedType</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span><span style="font-size:x-small;color:#ff0000"><span style="font-size:x-small;color:#ff0000">name</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">=</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">StoredProcedure</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span><span style="font-size:x-small;color:#ff0000"><span style="font-size:x-small;color:#ff0000">underlyingType</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">=</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">StoredProcedure</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span></span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Selection</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span><span style="font-size:x-small;color:#ff0000"><span style="font-size:x-small;color:#ff0000">restrictions</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">=</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">{Name}</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> /&gt;<span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span></span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Identifier</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span></span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Part</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span><span style="font-size:x-small;color:#ff0000"><span style="font-size:x-small;color:#ff0000">name</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">=</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">Name</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span><span style="font-size:x-small;color:#ff0000"><span style="font-size:x-small;color:#ff0000">underlyingMember</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">=</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">Name</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> /&gt;<span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span></span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Identifier</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span></span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Properties</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span></span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Property</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span><span style="font-size:x-small;color:#ff0000"><span style="font-size:x-small;color:#ff0000">name</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">=</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">Name</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span><span style="font-size:x-small;color:#ff0000"><span style="font-size:x-small;color:#ff0000">isIdentifierPart</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">=</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">true</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> /&gt;<span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span></span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Property</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span><span style="font-size:x-small;color:#ff0000"><span style="font-size:x-small;color:#ff0000">name</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">=</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">Type</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span><span style="font-size:x-small;color:#ff0000"><span style="font-size:x-small;color:#ff0000">underlyingMember</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">=</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">Type</span></span><span style="font-size:x-small">&quot;</span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> /&gt;<span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span></span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">Properties</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span></span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">MappedType</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt; </span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">MappedTypes</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt; </span></span><span style="font-size:x-small;color:#a31515"><span style="font-size:x-small;color:#a31515">DataObjectSupport</span></span><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">&gt;<br/><br/><br/><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff">When exdanf the storedprocedure node on the visual studio 2008 server exploder i get<br/><br/>&quot;Failed to compare the two elemnts in array&quot;<br/><br/>please let me know where i am doing wrong.<br/><br/><br/>Thanks,<br/>Rahul<span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> </span></span></span><span style="font-size:x-small;color:#0000ff"> <p> </p> </span></span></span></span> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"><span style="font-size:x-small;color:#0000ff"> <p> </p> <p> </p> <p> </p> <p> </p> </span></span></span></span>Fri, 30 Oct 2009 08:33:16 Z2009-11-24T02:27:43Zhttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/c445d326-cac8-4958-acce-60087b60c5b5http://social.msdn.microsoft.com/Forums/en-US/vsx/thread/c445d326-cac8-4958-acce-60087b60c5b5JoshHeysehttp://social.msdn.microsoft.com/Profile/en-US/?user=JoshHeyseCustom Hierarchy for a Flavored Project, Solution Explorer UI not updatingI’ve spent a lot of my free time over the last month looking into how to create a custom hierarchy for a flavored project.  My objective is as follows:<br/> <br/> The hierarchy would have 3 levels. At level 1 would be a single item (singleton) located directly below the References item. Level 2 would consist of n-number of items, each with n-number of items at level 3.   The root item at level one would allow for a contextual menu.  Items at level 2 would have custom configurable properties within the properties window.  Level 3 items may have some additional properties as well.  These 3rd level hierarchy items do not correspond to files but build actions instead. Levels 1 &amp; 2 are mostly for grouping purposes.   Each level needs to have different icons and I need to be able to respond to events when items are added or deleted. <br/> To my dismay, the MPF is not supported in flavored projects.  So my approach is to implement a custom hierarchy using a ‘Man in the Middle’ attack, er…um… solution. Yeah that sounds better.<br/> <br/> My Project, which implements FlavoredProjectBase, maintains a separate hierarchy using classes similar to the MPF, including HierarchyBase.  In my project’s OnAggrecationComplete() method I build the hierarchy by iterating through the inner project’s hierarchy.  For each node in the inner projects hierarchy I create an InnerHierarchyNode which has a uint property corresponding to the itemId known by the inner project. My project maintains a separate EventSinkCollection with newly generated itemIds for my hierarchy to prevent itemId collisions.  I maintain a Dictionary&lt;uint, object&gt; which understands the mapping from innerItemId to InnerHierarchyNode for quick retrieval outwards.  Also during OnAggrecationComplete() I add a hander to the inner project item event updates by calling base.AdviceHierarchyEvents(this).  <br/> <br/> <pre lang="x-c#">protected override void OnAggregationComplete() { base.OnAggregationComplete(); _root = BuildHiearchyNode(VSConstants.VSITEMID_ROOT); base.AdviseHierarchyEvents(this); } private InnerHierarchyNode BuildHiearchyNode(uint itemId) { var node = new InnerHierarchyNode(this, itemId); node.Caption = GetItemCaption(itemId); if (node.Caption.Equals(&quot;Properties&quot;, StringComparison.InvariantCultureIgnoreCase)) node.SortPriority = 50; else if (node.Caption.Equals(&quot;References&quot;, StringComparison.InvariantCultureIgnoreCase)) node.SortPriority = 100; var id = GetFirstChild(itemId); if(id == -1) return node; var child = BuildHiearchyNode((uint)id); node.AddChild(child); id = GetNextSibling((uint)id); while(id != -1) { child = BuildHiearchyNode((uint)id); node.AddChild(child); id = GetNextSibling((uint)id); } return node; }</pre> <br/> <br/> I override the AdviseHierarchyEvents &amp; UnadviseHierarchyEvents methods to capture the IVsHierarchyEvents registered with my project; they are not passed to the base implementation.<br/> <br/> <div style="color:Black;background-color:White"> <pre><span style="color:Blue">private</span> EventSinkCollection _hierarchyEventSinks = <span style="color:Blue">new</span> EventSinkCollection(); <span style="color:Blue">public</span> EventSinkCollection HierarchyEventSinks { <span style="color:Blue">get</span> { <span style="color:Blue">return</span> _hierarchyEventSinks; } <span style="color:Blue">set</span> { _hierarchyEventSinks = value; } } <span style="color:Blue">protected</span> <span style="color:Blue">override</span> <span style="color:Blue">uint</span> AdviseHierarchyEvents(IVsHierarchyEvents eventSink) { <span style="color:Blue">return</span> HierarchyEventSinks.Add(eventSink); } <span style="color:Blue">protected</span> <span style="color:Blue">override</span> <span style="color:Blue">void</span> UnadviseHierarchyEvents(<span style="color:Blue">uint</span> cookie) { HierarchyEventSinks.RemoveAt(cookie); } </pre> </div> <br/> <br/> I also override GetProperty to intercept the call, check to see if I can handle it with my custom hierarchy structure, or pass it on to the inner project, mapping the external item id to the internal before doing so.<br/> <br/> <div style="color:Black;background-color:White"> <pre><span style="color:Blue">protected</span> <span style="color:Blue">override</span> <span style="color:Blue">int</span> GetProperty(<span style="color:Blue">uint</span> itemId, <span style="color:Blue">int</span> propId, <span style="color:Blue">out</span> <span style="color:Blue">object</span> property) { <span style="color:Blue">if</span> (_root == <span style="color:Blue">null</span> ) <span style="color:Blue">return</span> <span style="color:Blue">base</span> .GetProperty(itemId, propId, <span style="color:Blue">out</span> property); <span style="color:Blue">if</span> (itemId == VSConstants.VSITEMID_ROOT) { property = _root.GetProperty(propId); <span style="color:Blue">return</span> VSConstants.S_OK; } <span style="color:Blue">var</span> node = ItemIdMap[itemId] <span style="color:Blue">as</span> HierarchyNode; property = node.GetProperty(propId); <span style="color:Blue">return</span> VSConstants.S_OK; } </pre> </div>  <br/> <br/> (I also implement the same strategy from ExecCommad and QueryCommandStatus)<br/> Next, I have implemented the IVsHierarchyEvents methods in my project to intercept messages raised by the inner project.  Here I capture the change, lookup the inner itemId and make the appropriate call within my custom hierarchy.  <br/> <br/> <pre>public int OnItemDeleted(uint itemid) { var innerHierarchyNode = InnerItemIdMap[itemid]; innerHierarchyNode.Parent.RemoveChild(innerHierarchyNode); return VSConstants.S_OK; }</pre> <br/> <br/> So far, Great! The hierarchy is rendered in the solution explorer using my rules, context menu, etc… all work.  The issue lies in notify the listeners of my projects IVsHierarchyEvents.  When I make change to the hierarchy either because of my own manipulation or because I am bubbling up a change from the inner project nothing happens.  I have implemented methods which iterate through the collection of IVsHierarchyEvent collected in AdviseHierarchyEvents calling the appropriate methods, but the changes aren’t reflected in the UI.<br/> <br/> <pre>public void RaiseItemAdded(uint parentId, uint previousSiblingId, uint itemId) { foreach (IVsHierarchyEvents sink in HierarchyEventSinks) { var result = sink.OnItemAdded(parentId, previousSiblingId, itemId); if (ErrorHandler.Failed(result) &amp;&amp; result != VSConstants.E_NOTIMPL) { ErrorHandler.ThrowOnFailure(result); } } }</pre> <br/> <br/> I’ve been struggling with this problem for several days and would appreciate any advice.  Is this issue feasible?  Am I missing something to propagate the events correctly?  <br/> I can provide more source code if necessary.  Thanks in advance!<br/> <br/> <p class=MsoNormal><span><br/> </span></p>Mon, 23 Nov 2009 19:59:43 Z2009-11-23T22:32:34Zhttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/0231895c-188b-49a7-89bd-a09a4f12a2c7http://social.msdn.microsoft.com/Forums/en-US/vsx/thread/0231895c-188b-49a7-89bd-a09a4f12a2c7AviaXhttp://social.msdn.microsoft.com/Profile/en-US/?user=AviaXDSL Tools Explorer Context menu: Hide/Remove CommandsHi everybody,<br/> <br/> is there a way to remove or hide commands in the context menu of the Explorer of my DSL created with the DSL Tools?<br/> <br/> Thank you.Thu, 19 Nov 2009 00:09:28 Z2009-11-24T02:58:47Zhttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/0bd440ca-228b-4bca-ba32-8d3f133c6db4http://social.msdn.microsoft.com/Forums/en-US/vsx/thread/0bd440ca-228b-4bca-ba32-8d3f133c6db4scsibluesmasterhttp://social.msdn.microsoft.com/Profile/en-US/?user=scsibluesmasterC# Package not receiving TaskRemoved event from ErrorList changesHello,<br /> <br /> I'm working on a C# package in VS2005 in which I'm presenting database-stored VB.NET code documents to the user, who may then modify the code and save it back to the database. To prevent code with syntax errors from being saved to the database, I want to validate it first - ideally at each TextEditorEvents.LineChanged event but without the hit of a full Build action. The shell seems to be automatically building or parsing on every LineChanged event itself because the ErrorList window gets updated constantly so I was hoping to take advantage of this and subscribe to the DTE2.Events.TaskListEvents TaskAdded and TaskRemoved events. The idea only half works, though: the TaskAdded event fires every time bad text/code is inserted but the TaskRemoved never fires if the bad text is removed. <br /> <br /> &lt;code&gt;<br /> //Class level (custom UserControl in a ToolWindow)<br /> private DTE2 _applicationObject;<br /> private TaskListEvents taskEvents;<br /> //Function level (Initialization sub called after class constructor is finished)<br /> taskEvents = _applicationObject.Events.get_TaskListEvents(&quot;&quot;); //I've tried (Events2)_applicationObject.Events, as well<br /> taskEvents.TaskAdded += new _dispTaskListEvents_TaskAddedEventHandler(taskEvents_TaskAdded);<br /> taskEvents.TaskRemoved += new _dispTaskListEvents_TaskRemovedEventHandler(taskEvents_TaskRemoved);<br /> //Implementation<br /> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; void taskEvents_TaskRemoved(TaskItem TaskItem)<br /> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br /> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //haven't gotten this to fire at all<br /> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //call to validation routine...<br /> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br /> <br /> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; void taskEvents_TaskAdded(TaskItem TaskItem)<br /> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br /> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //this fires every time<br /> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //call to validation routine... <br /> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br /> &lt;/code&gt;<br /> <br /> The user control is receiving SVsRunningDocumentTable, SVsShellMonitorSelection, BuildEvents and my own custom events successfully so I'm finding it really strange that the TaskAdded event will work but not TaskRemoved - surely it must be something simple. Has anyone run into this problem before? If, so is it fixable or is there a workaround? If I have to I'll settle for a manual re-Build and validation just prior to saving back to the database but would rather track the current state of the code documents as they change (multiple simultaneous open). <br /> <br /> Thanks!<br /> <br /> PhilWed, 07 Oct 2009 23:16:31 Z2009-11-23T19:58:38Zhttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/09170e00-4705-4954-8758-e4a3e9f73395http://social.msdn.microsoft.com/Forums/en-US/vsx/thread/09170e00-4705-4954-8758-e4a3e9f73395Trinominalhttp://social.msdn.microsoft.com/Profile/en-US/?user=Trinominal[VS Add-In]: How to get the floating path of a project reference?Hi,<br/><br/>I'm using the VSProject.References to iterate all the references of a certain project, and I wanted to know, given a &quot;Reference&quot; object, how can I get programatically the floating path of the DLL (the one corresponding to the &quot;HintPath&quot; we see if we open the &quot;csproj&quot; file in notepad) ?<br/><br/>RegardsSun, 22 Nov 2009 15:24:34 Z2009-11-23T17:53:29Zhttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/d87838ff-0473-42c2-a054-7b716af4a442http://social.msdn.microsoft.com/Forums/en-US/vsx/thread/d87838ff-0473-42c2-a054-7b716af4a442Barry M Tannenbaumhttp://social.msdn.microsoft.com/Profile/en-US/?user=Barry%20M%20TannenbaumModule Load/Unload Notifications?I'm exploring an idea at the moment, so I'm not wedded to any one version of Visual Studio or a single extension strategy, nor can I provide sample code.<br/> <br/> Is there any way for an addin or package to get notification that a module has been loaded or unloaded in a process being debugged?  I know that the DEBUG_EVENT returned by WaitForDebugEvent will provide this, but I haven't found any way to get notified of the DEBUG_EVENTs being processed by the debugger.Tue, 17 Nov 2009 14:35:10 Z2009-11-23T14:07:48Zhttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/65738aeb-3c35-4748-912f-6b315b6e62d3http://social.msdn.microsoft.com/Forums/en-US/vsx/thread/65738aeb-3c35-4748-912f-6b315b6e62d3Kris Dekeyserhttp://social.msdn.microsoft.com/Profile/en-US/?user=Kris%20Dekeyser[VSX] Custom Debugger: getting the native debugger objectHi,<br/> <br/> I'm trying to develop a simple custom debugger that wraps the installed native debugger engine. This would serve as a base for a more elaborate debugger that will use the native debug engine internally. It's written in C# and I used the Debugger Engine Sample project to start with.<br/> <br/> Currently whenever I attach or launch the custom debugger, Visual Studio displays a message box stating: &quot;Unable to attach to the process. The debugger is not properly installed. Cannot debug the requested type of code. Run setup to install or repair the debugger.&quot;<br/> <br/> There does not seem to be anything wrong with the native debugger as I can debug any plain C++ program with it without any problem. I inserted a &quot;System.Diagnostics.Debugger.Break();&quot; line in the custom debugger constructor to find out what is wrong. If I launch the project I hit the breakpoint and it turns out that activating the native debugger is what fails. This is the source code of the constructor:<br/> <br/> <div style="color:Black;background-color:White"> <pre> <span style="color:Green">// constructor</span> <span style="color:Blue">public</span> DebugEngineWrapper() { System.Diagnostics.Debugger.Break(); Type t = Type.GetTypeFromCLSID(AD7Guids.guidNativeDebugEngine); <span style="color:Blue">object</span> o = Activator.CreateInstance(t); <span style="color:Blue">if</span> (o == <span style="color:Blue">null</span>) { <span style="color:Blue">throw</span> <span style="color:Blue">new</span> ArgumentNullException(<span style="color:#A31515">&quot;Could not instantiate Native Debug Engine object.&quot;</span>); } mNativeDebugEngine = (IDebugEngine2) o; <span style="color:Blue">if</span> (mNativeDebugEngine == <span style="color:Blue">null</span>) { <span style="color:Blue">throw</span> <span style="color:Blue">new</span> ApplicationException(<span style="color:#A31515">&quot;Bad Native Debug Engine object found.&quot;</span>); } } </pre> </div> <br/> The method seems to get an exception on the Activator.CreateInstance(t); call, but I do not understand why it fails. What should I do to get this working?<br/>Mon, 23 Nov 2009 12:34:44 Z2009-11-23T13:00:03Zhttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/56d6accc-da36-4910-9edf-a334842a605ahttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/56d6accc-da36-4910-9edf-a334842a605amaths83http://social.msdn.microsoft.com/Profile/en-US/?user=maths83How to Customize Visual studio Start page<p>I want to display a custom tab in the &quot;start page&quot; when we launch Visual studio 2008.How can I achieve this?.</p>Wed, 16 Sep 2009 09:45:56 Z2009-11-23T12:29:54Zhttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/06868061-0092-4ea2-a7bf-673adf5b9099http://social.msdn.microsoft.com/Forums/en-US/vsx/thread/06868061-0092-4ea2-a7bf-673adf5b9099Simon Gateshttp://social.msdn.microsoft.com/Profile/en-US/?user=Simon%20GatesCommunication between custom debugger and IDE.<div>Hi,</div> <div><br/></div> <div>I have a custom project VS package with a debugger written in C# with the MPF.</div> <div><br/></div> <div>I would like to add a new dockable IDE element that displays information only available to the debugger. Is there a standard way for IDE elements to communicate with a custom port/process/program and vice versa?</div> <div><br/></div> <div>Thanks,</div> <div><br/></div> <div>Simon.</div> <div><br/></div>Fri, 20 Nov 2009 11:07:27 Z2009-11-23T10:10:46Zhttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/9f4e1361-7a33-4cbe-9e54-4070757a4979http://social.msdn.microsoft.com/Forums/en-US/vsx/thread/9f4e1361-7a33-4cbe-9e54-4070757a4979Miro Kropacekhttp://social.msdn.microsoft.com/Profile/en-US/?user=Miro%20KropacekIs it possible to add file(s) into project using simple add-in?Hello, <div><br/></div> <div>I'm new to all this extensibility stuff, I've studied / tried some of the examples etc but neither from examples nor reference docs I can't find any information about adding (creating) new files into some selected project. Something like &quot;if the project's name is this and this, then get the Project object and add the file with path that and that to it and save whole vcproj&quot;. Is it possible in any way?</div>Fri, 20 Nov 2009 15:20:46 Z2009-11-23T08:10:26Zhttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/b75b2d7f-2ebe-4c11-9e84-755dcae5b13ahttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/b75b2d7f-2ebe-4c11-9e84-755dcae5b13aLior Salemhttp://social.msdn.microsoft.com/Profile/en-US/?user=Lior%20SalemVS2005 Addin to avoid putting .Design.dll in the GACHi all,<br/> I'm developing WinForms controls using VS2005.<br/> I am looking for a way to avoid the need to put the .Design.dll (with all designers for controls) in the GAC.<br/> My current approach is to develop an Add-in to VS2005 that will load all the required assemblies for design-time into VS2005 AppDomain.<br/> Problem is, this does not work :-(<br/> Are there 2 different AppDomains (the VS2005 Add-in and the one that is actually being used to design forms)?<br/> <br/> BTW, I already know about the AssemblyFolder and AssemblyFolderEx keys in the registry - this also is not a good solution for me (I eventually want to be able to use different versions of those .design assemblies in different solutions).<br/> <br/> Any help would be much appreciated.<br/> TIA<br/> Lior.Wed, 18 Nov 2009 07:25:20 Z2009-11-25T02:49:28Zhttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/1155e876-d166-4ff1-9ddc-ade95507b6d4http://social.msdn.microsoft.com/Forums/en-US/vsx/thread/1155e876-d166-4ff1-9ddc-ade95507b6d4sathya.cshttp://social.msdn.microsoft.com/Profile/en-US/?user=sathya.csMissig projectname.exe error while runningWhen i try to run cosole program in vc++ or vc# the following error  dialog is coming&quot;Visual Studio cannot start debugginf because the debug target'c:\projects\....]basics.exe'is missing.i am new to VS..wat can i do..Sun, 22 Nov 2009 01:45:54 Z2009-11-23T03:25:52Zhttp://social.msdn.microsoft.com/Forums/en-US/vsx/thread/2598b6a9-0faf-437a-844c-a1238dd02b43http://social.msdn.microsoft.com/Forums/en-US/vsx/thread/2598b6a9-0faf-437a-844c-a1238dd02b43Coder2009http://social.msdn.microsoft.com/Profile/en-US/?user=Coder2009Recycling VsTextBufferClass as DocData in OpenSpecificEditor causes editor to be read-only<p>I use a VsTextBufferClass as the DocData of a non-file document.<br/>I pass it in my calls to OpenSpecificEditor. When I close<br/>the editor, I keep the VsTextBufferClass around. When the<br/>same non-file document is opened again, I look up the same<br/>VsTextBufferClass and pass it to OpenSpecificEditor.<br/><br/>Unfortunately, this reuse causes the editor to be read-only.<br/>How do I force the editor to be non-read-only?<br/><br/>Thank you.</p>Fri, 13 Nov 2009 08:02:12 Z2009-11-23T01:53:19Z