in

Platinum Bay

Peace, Love and Visual Studio Team System

.NETicated

Visual Studio Extensi-Possibly

Recently, I have been on a fix with Visual Studio eXtensibility (VSX), and have been experimenting with Visual Studio automation. Extensibility is one of the pillars of Visual Studio, and there are so many things you can do. Once you get a handle on it, the possibilities are unlimited.

Or are they? My last post mentioned a problem, two actually, that I encountered while trying to create a debugger visualizer for the 'System.__ComObject' type. Here is another Visual Studio add-in I attempted to build without success:

Source Control Switcher

To change the source control provider in Visual Studio, you have to navigate to the Tools menu and choose 'Options…'. Then select 'Source Control' from the TreeView and find the desired provider in the dropdown. What a pain. I have source control set up at home for my projects, a couple CodePlex projects, and a work source control environment to switch between. I thought it would be wonderful to have a dropdown in a toolbar to allow me to switch source control providers.

Unfortunately, there are no hooks in the add-in model to allow for this. There is a DTE.SourceControl object, but it only allows for working within the currently selected source control provider. For those familiar with the add-in model, there is also an option to use EnvDTE.Properties("", ""), but it cannot be used to access the Source Control properties.

I found some tools out there to do this – sorta. They all use the registry and require you to close and re-open Visual Studio. Not an ideal solution.

I may have to move this project up a notch to tier 3 and see if this is possible with the Managed Package Framework/Visual Studio SDK. I found a IVsSccToolsOptions interface in the MPF, maybe that will work? We'll give it a go.

Isn't pushing the envelope fun? Speaking of envelope, I may need some SOAP after all this getting down and dirty.

Comments

October 12, 2007 12:43 PM

Do you enjoy working at RDA? How do you they even allow you to have a life?

J
 

Leave a Comment

(required )  
(optional )
(required )  
Add

About Steve

Steve Andrews has been working as a developer for more than 8 years. During this time, he has designed and developed applications in such widely varying areas as trust accounting, medical information management, supply chain management, and retail systems. He has firsthand developer experience with a variety of languages, including Java, VB, and .NET. Most recently, he has been immersed in SharePoint. He is currently employed at RDA Corporation in Philadelphia, PA, as a Software Engineer and a team member in the Architectural Guidance evangelism team. Steve is also an MTCS (x2), ICSOO, and .NET fanatic.
Powered by Community Server (Commercial Edition), by Telligent Systems
© Platinum Bay | Some Rights Reserved Creative Commons License

Disclaimer: The information in this weblog is provided "AS IS" with no warranties, and confers no rights. This weblog does not represent the thoughts, intentions, plans or strategies of my employer. It is solely my opinion. Feel free to challenge me, disagree with me, or tell me I'm completely nuts in the comments section of each blog entry, but I reserve the right to delete any comment for any reason whatsoever (abusive, profane, rude, or annonymous comments) - so keep it polite, please.