IContextMenu interface (shobjidl_core.h)

Exposes methods that either create or merge a shortcut menu associated with a Shell object. Note that there are several better ways to extend Shell menus. For more information, see Creating Shortcut Menu Handlers.


The IContextMenu interface inherits from the IUnknown interface. IContextMenu also has these types of members:


The IContextMenu interface has these methods.


Gets information about a shortcut menu command, including the help string and the language-independent, or canonical, name for the command.

Carries out the command associated with a shortcut menu item.

Adds commands to a shortcut menu.


When to Implement

Implement IContextMenu in the following situations. For a detailed discussion of how to implement IContextMenu, see Creating Context Menu Handlers.

When to Use

Applications use IContextMenu to retrieve information about the items in an object's shortcut menu and to invoke the associated commands. To retrieve an object's IContextMenu interface, an application must call the object's IShellFolder::GetUIObjectOf method.

Shell extension handlers that export this interface must also export IShellExtInit. For details, see Creating Shell Extension Handlers.

Note  Windows Vista and later: Prior to Windows Vista this interface was declared in Shlobj.h.
Note Windows 11 refines the behavior of the contextual file operations in the right-click context menu of File Explorer and the Share dialog. Please see Top 11 things you can do to make your app great on Windows 11


Requirement Value
Minimum supported client Windows XP [desktop apps only]
Minimum supported server Windows 2000 Server [desktop apps only]
Target Platform Windows
Header shobjidl_core.h