MCI_OPEN 命令

MCI_OPEN 命令初始化设备或文件。 所有设备都识别此命令。

若要发送此命令,请使用以下参数调用 mciSendCommand 函数。

MCIERROR mciSendCommand(
  MCIDEVICEID wDeviceID, 
  MCI_OPEN, 
  DWORD dwFlags, 
  (DWORD) (LPMCI_OPEN_PARMS) lpOpen
);

parameters

wDeviceID

要接收命令消息的 MCI 设备的设备标识符。

dwFlags

MCI_NOTIFY或MCI_WAIT。 有关这些标志的信息,请参阅 等待、通知和测试标志

lpOpen

指向 MCI_OPEN_PARMS 结构的指针。 具有扩展命令集 (设备可能会将此结构替换为特定于设备的结构。)

返回值

如果成功,则返回零,否则返回错误。

备注

每当 在 mciSendCommand 函数中指定设备时,都必须使用 MCI_OPEN_TYPE 标志。 如果通过指定设备类型常量打开设备,除了MCI_OPEN_TYPE之外,还必须指定MCI_OPEN_TYPE_ID标志。 有关设备类型常量的列表,请参阅 MCI 设备类型

如果在最初打开设备或文件时未指定MCI_OPEN_SHAREABLE标志,则设备或文件的所有后续MCI_OPEN命令都将失败。 如果设备或文件已打开且未指定此标志,则调用将失败,即使MCI_OPEN_SHAREABLE指定的第一个打开命令也是如此。 为 MCISEQ 打开的文件。DRV 和 MCIWAVE。DRV 设备不可共享。

设备名称中忽略大小写,但不能有前导空格或尾随空格。

若要通过注册表) 中的条目使用自动类型选择 (,请将文件名和文件扩展名分配给由 lpOpen 标识的结构的 lpstrElementName 成员,将 lpstrDeviceType 成员设置为 NULL,并设置MCI_OPEN_ELEMENT标志。

以下附加标志适用于支持MCI_OPEN的所有设备:

MCI_OPEN_ALIAS

别名包含在由 lpOpen 标识的结构的 lpstrAlias 成员中。

MCI_OPEN_SHAREABLE

应以可共享的形式打开设备或文件。

MCI_OPEN_TYPE

设备类型名称或常量包含在由 lpOpen 标识的结构的 lpstrDeviceType 成员中。

MCI_OPEN_TYPE_ID

lpOpen 标识的结构的 lpstrDeviceType 成员的低序字包含标准 MCI 设备类型标识符,高序字(可选)包含设备的序号索引。 将此标志与 MCI_OPEN_TYPE 标志一起使用。

以下附加标志适用于复合设备:

MCI_OPEN_ELEMENT

文件名包含在由 lpOpen 标识的结构的 lpstrElementName 成员中。

MCI_OPEN_ELEMENT_ID

lpOpen 标识的结构的 lpstrElementName 成员被解释为 DWORD 值,在设备内部具有含义。 将此标志与 MCI_OPEN_ELEMENT 标志一起使用。

以下附加标志用于 数字视频 设备类型:

MCI_DGV_OPEN_NOSTATIC

设备应减少调色板中静态 (系统) 颜色的数量。 这会增加可用于呈现视频流的颜色数量。 此标志仅适用于与 Windows 共享调色板的设备。

MCI_DGV_OPEN_PARENT

父窗口句柄在 lpOpen 标识的结构的 hWndParent 成员中指定。

MCI_DGV_OPEN_WS

窗口样式在 lpOpen 标识的结构的 dwStyle 成员中指定。

MCI_DGV_OPEN_16BIT

指示首选 16 位 MCI 设备支持。

MCI_DGV_OPEN_32BIT

指示首选 32 位 MCI 设备支持。

对于数字视频设备, lpOpen 参数指向 MCI_DGV_OPEN_PARMS 结构。

以下附加标志用于 覆盖 设备类型:

MCI_OVLY_OPEN_PARENT

父窗口句柄在 lpOpen 标识的结构的 hWndParent 成员中指定。

MCI_OVLY_OPEN_WS

窗口样式在 lpOpen 标识的结构的 dwStyle 成员中指定。 dwStyle 值指定应用程序未提供窗口时驱动程序将创建和显示的窗口样式。 style 参数采用定义窗口样式的整数。 这些常量与标准窗口样式 (相同,例如WS_CHILD、WS_OVERLAPPEDWINDOW或WS_POPUP) 。

对于视频覆盖设备, lpOpen 参数指向 MCI_OVLY_OPEN_PARMS 结构。

以下附加标志用于 waveaudio 设备类型:

MCI_WAVE_OPEN_BUFFER

缓冲区长度在 lpOpen 标识的结构的 dwBufferSeconds 成员中指定。

对于波形音频设备, lpOpen 参数指向 MCI_WAVE_OPEN_PARMS 结构。 MCIWAVE 驱动程序需要异步波形音频设备。

要求

要求
最低受支持的客户端
Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器
Windows 2000 Server [仅限桌面应用]
标头
Mmsystem.h (包括 Windows.h)

请参阅

Mci

MCI 命令