Creating Packages with VSIP Extras


If you’re a VSIP developer, you’re probably anticipating the final release of VSIP Extras (currently in beta). Not only can you write packages in C# (or any other .NET language for that matter), but we’ve even given you a wizard to get all the messy code done for you so you can focus on your package’s functionality.


To start the wizard (from within VS .NET 2003 with VSIP and VSIP Extras [Beta] installed), go to File->New Project. Then select Other Projects->Extensibility Projects->Visual Studio Integration Package. The wizard allows you to generate a basic project in either C# or C++. Since it uses the new VSIP helper classes, let’s stick with C# for now. The following pages allow you to set basic information about your package and allow you to add a menu command, tool window, and/or a custom editor to your package.


Upon completing the wizard, you should have a functioning VSIP package written in C#….and you didn’t have to write a line of code yet!!! You may notice that there are actually 2 projects in the generated solution (one in C# and one in C++). The C++ project is the project that builds what’s known as your satellite DLL. You may see this term in other areas of the VSIP documentation. This is the DLL that contains the localized user interface (UI) elements for your package (hence the “UI” at the end of the project name). This way, you can keep all your functionality in one DLL, but move the language-specific UI elements into separate projects, making it easier to distribute your package in multiple languages.


Now let’s take a look at the C# project that was generated. You should have several files there, but the most interesting one will probably be VsPkg.cs. This is where your base package code resides. One of the other cool new features of VSIP Extras is what we call the “helper” classes. You will find these in the Microsoft.VisualStudio.VSIP.Helper.dll library. There should be a reference to the helper DLL in your C# project. These are a set of classes and attributes which you can inherit from and override to implement your package. Next time, I’ll explain some more about what else is in the generated project. Stay tuned!


Comments (6)

  1. Anonymous says:

    can you send the download-url to me?

    very very thank you.

    uestc95@263.net

  2. Anonymous says:

    The download can be found here:

    http://www.vsipdev.com/downloads/

    Although I wouldn’t recommend installing it, it whiped out the MSDN documentation 🙁

    I installed the VSIP package recently, it added the VSIP docs to the MS Help system nicely aside the MSDN documentation. But after installing the VSIP extra package, the MSDN was suddenly gone for some reason. Repairing the MSDN helped, but now the VSIP documentation is missing.

    I’ve been browsing for miles and miles on the MSDN homepage, but I couldn’t find a bug submit form anywhere. So I’ll just put a comment about this on this blog right before I’m going to figure out a way to fix the damn thing.

  3. Anonymous says:

    Hey Sylvester,

    Where did you install VS, VSIP, and VSIP Extras? We would like to resolve this issue with you, but we need some more info first. Please send me email directly at aaronm<AT>microsoft.com. Hopefully we can work this out.

    Thanks,

    AaronM

  4. Anonymous says:

    I need more Info on VSIP

  5. Anonymous says:

    Hi Mahavir,

    You can get more information on VSIP from the Visual Studio Extensibility Center on MSDN: http://msdn.microsoft.com/vstudio/extend/

    Hope that helps!

    Aaron Marten