Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How do you develop Visual Studio Add-Ins?

I have a vague idea Visual Studio allows you to run a second sandboxed instance where the add-in is being in fact loaded. That'd allow you to debug your add-in code and such.

Is this effectively possible? How would I go about doing that?

I'm currently using a single instance of Visual Studio. I'm having the problem that as I load and run the add-in, it won't allow me to compile again until I restart that instance of Visual Studio as there seems to be no way to unload the add-in. Even using two instances of Visual Studio wouldn't really help in here. There must be an easier way, how do you guys do it?

Thanks

like image 687
devoured elysium Avatar asked May 16 '10 22:05

devoured elysium


People also ask

Where are Visual Studio code extensions installed?

Extensions are installed in a per user extensions folder. Depending on your platform, the location is in the following folder: Windows %USERPROFILE%\.vscode\extensions. macOS ~/.vscode/extensions.


1 Answers

I would recommend to download Visual Studio SDK for the VS version you are using i.e. VS2010.

All you need is to run the second instance of VS in the experimental hive. There is a command line switch rootsuffix which takes one parameter - the name of the experimental hive (usually Exp). If you start VS with this key it will create a separate hive in the registry by cloning whatever is necessary from the standard VS hive.

You can register/add your plugins/packages/whatever in the experimental hive, while your workhorse - main hive remains clean and unaffected

This is a good idea even if you ignore your headache with the locked dlls. One thing it is not too difficult to mess up the registry really bad - so VS wont even start. You do not want this to happen with your main hive. And if ti happens with the experimental - well - you can always recreate it - there is a utility for that included in the SDK

like image 72
mfeingold Avatar answered Sep 29 '22 02:09

mfeingold