IDvdControl2::ShowMenu 方法 (strmif.h)

[与此页面关联的功能 DirectShow 是一项旧功能。 它已被 MediaPlayerIMFMediaEngine媒体基金会中的音频/视频捕获取代。 这些功能已针对Windows 10和Windows 11进行了优化。 Microsoft 强烈建议新代码尽可能使用 MediaPlayerIMFMediaEngineMedia Foundation 中的音频/视频捕获 ,而不是 DirectShow。 如果可能,Microsoft 建议重写使用旧 API 的现有代码以使用新 API。]

方法 ShowMenu 显示指定的菜单(如果可用)。

语法

HRESULT ShowMenu(
  [in]  DVD_MENU_ID MenuID,
  [in]  DWORD       dwFlags,
  [out] IDvdCmd     **ppCmd
);

参数

[in] MenuID

一个DVD_MENU_ID枚举值,该值指定要显示的菜单。

[in] dwFlags

DVD_CMD_FLAGS枚举中的一个或多个标志的按位 OR,指定如何同步命令。

[out] ppCmd

接收指向可用于同步 DVD 命令的 IDvdCmd 对象的指针。 调用方必须释放接口。 此参数可以为 NULL。 有关详细信息,请参阅 同步 DVD 命令

返回值

返回以下值之一。

返回代码 说明
S_OK
成功。
E_INVALIDARG
MenuID 参数无效。
VFW_E_DVD_INVALIDDOMAIN
域无效。
VFW_E_DVD_MENU_DOES_NOT_EXIST
指定的菜单不存在。
VFW_E_DVD_OPERATION_INHIBITED
UOP 控制禁止该操作。

注解

视频管理器菜单 (VMGM) 应可从标题或视频标题集域进行访问。 VTSM) (视频标题集菜单可能只能通过 VMGM 访问。 每个 VTSM (章节、角度以及音频和子图片流) 下的任何子菜单只能通过该 VTSM 访问。

此方法在 CDvdCore::RootMenu 和 CDvdCore::TitleMenu 中的 DVDSample 应用程序应用程序中演示。

下表显示了此方法名称对应的 Annex J 命令名称,以及此方法有效的域。

附件 J 命令名称 有效域
Menu_Call 全部。

要求

要求
最低受支持的客户端 Windows XP [仅限桌面应用]
最低受支持的服务器 Windows Server 2003 [仅限桌面应用]
目标平台 Windows
标头 strmif.h (包括 Dshow.h)
Library Strmiids.lib

另请参阅

DVD 应用程序

错误和成功代码

IDvdControl2 接口

使用 DVD 菜单