This documentation is archived and is not being maintained.

ToolWindowGuids Class

Provides GUIDs that are used to identify Visual Studio tool windows.

Namespace: Microsoft.VisualStudio.Shell.Interop
Assembly: Microsoft.VisualStudio.Shell.Interop.8.0 (in

public abstract class ToolWindowGuids
public abstract class ToolWindowGuids
public abstract class ToolWindowGuids


This collection of GUIDs is specific to Visual Studio .NET 2003. All of these contexts are also included in the ToolWindowGuids80 collection for later versions of Visual Studio.

The various tool windows in Visual Studio have unique GUIDs assigned to them. These GUIDs can be used as a context which can be monitored through the SVsShellMonitorSelection service (see the AdviseSelectionEvents method). It is also possible to request the state of each tool window by using the methods of the IVsMonitorSelection interface, which in turn is obtained from the SVsShellMonitorSelection service.

VSPackages that have user interface (UI) elements can associate these UI elements with particular tool windows and dialog boxes. When the tool windows become active or inactive, the associated UI elements of the VSPackage are automatically activated or deactivated as well. The VSPackage makes this association between its own UI elements and the tool windows using the VISIBILITY_SECTION section of the Command Table Compiler (.ctc) file that is part of the VSPackage. You must manually copy the GUID for a tool window into your .ctc file. For example, if you want to have a menu item associated with the Find and Replace tool window, you must create a label for the FindReplace GUID:

#define guidFindReplace { 0xCF2DDC32, 0x8CAD, 0x11D2, { 0x93, 0x02, 0x00, 0x53, 0x45, 0x00, 0x00, 0x 00 } }

You then use that definition in the VISIBLITY_SECTION of the .ctc file:

    // Command                        GUID when visible
    guidMyCmdSet:cmdidMyMenuCommand,  guidFindReplace;


Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.