SHCreateDefaultContextMenu 函数 (shlobj_core.h)

创建一个对象,该对象表示 Shell 的默认上下文菜单实现。

语法

SHSTDAPI SHCreateDefaultContextMenu(
  [in]  const DEFCONTEXTMENU *pdcm,
        REFIID               riid,
  [out] void                 **ppv
);

参数

[in] pdcm

类型: const DEFCONTEXTMENU*

指向常量 DEFCONTEXTMENU 结构的指针。

riid

类型: REFIID

对对象所基于的接口的接口 ID 的引用。 这通常是 IContextMenu、IContextMenu2IContextMenu3 的 IID。

[out] ppv

类型: void**

此方法返回时,包含 riid 中请求的接口指针。

返回值

类型: HRESULT

如果此函数成功,则返回 S_OK。 否则,将返回 HRESULT 错误代码。

注解

此函数通常用于 IShellFolder::GetUIObjectOf 的实现。 GetUIObjectOf 创建一个上下文菜单,该菜单合并由 DEFCONTEXTMENU 结构指定的 IContextMenu 处理程序,并且可以选择性地提供默认上下文菜单谓词实现,例如打开、浏览、删除和复制。

此函数的操作由 DEFCONTEXTMENU 结构中指定的输入控制。APICDefFolderMenu_Create2 是构造默认上下文菜单实现的另一种方法。 它的表现力不如 SHCreateDefaultContextMenu, 但它存在于 Windows Vista 之前的平台中。

要求

要求
最低受支持的客户端 Windows Vista [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 [仅限桌面应用]
目标平台 Windows
标头 shlobj_core.h (包括 Shlobj.h)
DLL Shell32.dll (版本 6.0.6000 或更高版本)
API 集 ext-ms-win-shell-shell32-l1-2-2 (在 Windows 10 版本 10.0.14393 中引入)