Partager via


IVsExtensionManager Interface

Used to search for extensions to install and to manage installed extensions.

Namespace:  Microsoft.VisualStudio.ExtensionManager
Assembly:  Microsoft.VisualStudio.ExtensionManager (in Microsoft.VisualStudio.ExtensionManager.dll)

Syntax

'Déclaration
<ComVisibleAttribute(True)> _
Public Interface IVsExtensionManager _
    Inherits INotifyPropertyChanged
[ComVisibleAttribute(true)]
public interface IVsExtensionManager : INotifyPropertyChanged
[ComVisibleAttribute(true)]
public interface class IVsExtensionManager : INotifyPropertyChanged
[<ComVisibleAttribute(true)>]
type IVsExtensionManager =  
    interface
        interface INotifyPropertyChanged
    end
public interface IVsExtensionManager extends INotifyPropertyChanged

The IVsExtensionManager type exposes the following members.

Properties

  Name Description
Public property DidLoadUserExtensions
Public property RestartRequired Denotes whether the extension manager service has performed an operation that requires a restart.

Top

Methods

  Name Description
Public method CreateExtension Extension factory method.
Public method CreateInstallableExtension Factory method for extensions that are installable.
Public method Disable Prevents an installed extension from being loaded. This action may require a restart of Visual Studio.
Public method Enable Enables an extension to be loaded. This action may require a restart of Visual Studio.
Public method FindMissingReferences Checks whether all references of a given extension are installed. This method only checks for first-level dependencies and does not verify that references of references are installed.
Public method GetEnabledExtensionContentLocations(String) Queries for a collection of the paths of all content of a particular type that is included in enabled extensions.
Public method GetEnabledExtensionContentLocations(String, IDictionary<String, String>) Queries for a collection of the paths of all content of a particular type that is included in enabled extensions, and then filters the results by matching the given attributes to the XML attributes on the content node.
Public method GetEnabledExtensions() Queries for all enabled extensions under ExtensionsRoot.
Public method GetEnabledExtensions(String) Queries for all enabled extensions that contain a particular content type, for example, ItemTemplates or MEFComponents.
Public method GetImmediateDependants Finds all installed extensions that depend on the given extension.
Public method GetInstalledExtension Query for an installed extension by using its extension identifier (ID).
Public method GetInstalledExtensions Query for all installed extensions under ExtensionsRoot.
Public method Install Installs an extension to the ExtensionsRoot directory.
Public method InstallAsync(IInstallableExtension, Boolean) Asynchronously installs an extension to the ExtensionsRoot directory. Installations that are invoked by using this method cannot be canceled.
Public method InstallAsync(IInstallableExtension, Boolean, Object) Asynchronously installs an extension to the ExtensionsRoot directory. Installations that are invoked by using this method may be canceled by passing the userState object to the InstallAsyncCancel method.
Public method InstallAsyncCancel Cancels a pending asynchronous installation operation.
Public method IsInstalled Determines whether an extension is installed in any ExtensionsRoot directory.
Public method RevertUninstall Reverts an uninstalled extension to an installed state.
Public method TryGetInstalledExtension Query for an installed extension by using the extension identifier (ID).
Public method Uninstall Uninstalls an extension from the ExtensionsRoot directory. A restart of Visual Studio is required to complete the uninstallation.

Top

Events

  Name Description
Public event InstallCompleted Event that is fired when an InstallAsync operation completes, is canceled, or has an error.
Public event InstallProgressChanged Event that is fired as progress is made after an installation is started by using the InstallAsync method.
Public event PropertyChanged Occurs when a property value changes. (Inherited from INotifyPropertyChanged.)

Top

Remarks

Although this API supports the Extension Manager infrastructure, we recommend that you do not use it because it is subject to change.

Implement this interface in a custom extension manager service to enable search for and download of extensions from a web service that implements IVsExtensionRepository.

See Also

Reference

Microsoft.VisualStudio.ExtensionManager Namespace