Share via


IVsShell Interface

Provides access to the fundamental environment services, specifically those dealing with VSPackages and the registry.

Namespace:  Microsoft.VisualStudio.Shell.Interop
Assembly:  Microsoft.VisualStudio.Shell.Interop (in Microsoft.VisualStudio.Shell.Interop.dll)

Syntax

'Declaration
<GuidAttribute("FD9DC8E3-2FFC-446D-8C50-99CA4A3D2D1C")> _
<InterfaceTypeAttribute()> _
Public Interface IVsShell
[GuidAttribute("FD9DC8E3-2FFC-446D-8C50-99CA4A3D2D1C")]
[InterfaceTypeAttribute()]
public interface IVsShell
[GuidAttribute(L"FD9DC8E3-2FFC-446D-8C50-99CA4A3D2D1C")]
[InterfaceTypeAttribute()]
public interface class IVsShell
[<GuidAttribute("FD9DC8E3-2FFC-446D-8C50-99CA4A3D2D1C")>]
[<InterfaceTypeAttribute()>]
type IVsShell =  interface end
public interface IVsShell

The IVsShell type exposes the following members.

Methods

  Name Description
Public method AdviseBroadcastMessages Enables clients to receive messages that are typically broadcast only to the main application window.
Public method AdviseShellPropertyChanges Enables clients to receive notifications of property changes to the environment.
Public method GetPackageEnum Returns a standard enumerator to iterate through the VSPackages currently loaded by the environment.
Public method GetProperty Returns an environment property.
Public method IsPackageInstalled Determines whether a VSPackage identified by guidPackage is installed and registered with the system.
Public method IsPackageLoaded Determines whether a VSPackage identified by the package GUID (guidPackage) is loaded in the environment.
Public method LoadPackage Triggers a VSPackage implementation DLL to be loaded into the environment.
Public method LoadPackageString Directly loads a localized string from a VSPackage satellite DLL.
Public method LoadUILibrary Triggers the satellite DLL to load if it has not already done so.
Public method SetProperty Sets an environment property.
Public method UnadviseBroadcastMessages Disables clients from receiving messages typically broadcast only to the main application window.
Public method UnadviseShellPropertyChanges Disables clients from receiving notifications of property changes to the environment.

Top

Remarks

Direct manipulation of other VSPackages is discouraged. The recommended procedure is for the VSPackage to proffer services, using the SProfferService service, which are then consumed by other VSPackages sharing the environment.

Notes to Callers

Call IVsShell in conjunction with the environment service, SVsShell, when needing to implement VSPackages, projects, editors, and other entities that require access to local registry information or directly manipulate other VSPackages.

See Also

Reference

Microsoft.VisualStudio.Shell.Interop Namespace