Manage VSPackages

Applies to: yesVisual Studio noVisual Studio for Mac

Note

This article applies to Visual Studio 2017. If you're looking for the latest Visual Studio documentation, see Visual Studio documentation. We recommend upgrading to the latest version of Visual Studio. Download it here

In most cases you don't need to worry about managing VSPackages, since the project and item templates register and load the package automatically. However, in some circumstances you may need to learn a bit more in order to manage your package.

Use the experimental instance

To find out more about the experimental instance, see The experimental instance.

Register and unregister VSPackages

To find out how to register and unregister VSPackages and other types of extension, see Register and unregister VSPackages.

Load a VSPackage

VSPackages can be set to autoload when a particular CMDUICONTEXT GUID is turned on. For more information, see Load VSPackages.

Use AsyncPackage to load VSPackages in the background

The AsyncPackage class enables package loading on a background thread for better UI responsiveness in Visual Studio. For more information, see How to: Use AsyncPackage to load VSPackages in the background.

Rule-based UI Context for extensions

Rules-based UI Contexts allows extension authors to define the precise conditions under which a UI Context is activated and associated VSPackages loaded. For more information, see How to: Use rule-based UI Context for Visual Studio extensions.

Diagnose extension performance

Extensions can impact startup and solution load performance. Learn how Visual Studio extension impact is calculated and how it can be analyzed locally to test if an extension may be shown as a performance impacting extension. For more information, see How to: Diagnose extension performance.

Troubleshoot VSPackages

Find out the techniques for troubleshooting VSPackages that don't load or are experiencing errors: Troubleshoot VSPackages

See also