open 命令
open 命令初始化设备。 所有 MCI 设备都识别此命令。
若要发送此命令,请使用 lpszCommand 参数集调用 mciSendString 函数,如下所示。
_stprintf_s(
lpszCommand,
TEXT("open %s %s %s"),
lpszDevice,
lpszOpenFlags,
lpszFlags
);
parameters
-
lpszDevice
-
MCI 设备或设备驱动程序的标识符。 这可以是注册表中给定的设备名称 (,也可以是SYSTEM.INI文件) 或设备驱动程序的文件名。 如果指定设备驱动程序的文件名,则可以选择性地包含 。DRV 扩展,但不应包含文件的路径。
-
lpszOpenFlags
-
标识要初始化的标志。 下表列出了可识别 打开 命令的设备类型以及每种类型使用的标志。
值 含义 含义 cdaudio 别名 device_alias可共享 type device_type digitalvideo alias device_aliaselementnamenostatic 父 hwndsharable 样式子样式重叠样式弹出样式 style_type类型 device_type overlay 别名 device_alias父 hwnd可共享样式子 样式重叠样式弹出样式 style_type类型 device_type sequencer 别名 device_alias 可共享 type device_type 录像机 别名 device_alias可共享 type device_type videodisk 别名 device_alias可共享 type device_type waveaudio 别名 device_alias缓冲区 buffer_size 可共享类型 device_type 下表列出了可在 lpszOpenFlags 参数中指定的标志及其含义。
值 含义 alias device_alias 指定给定设备的备用名称。 如果指定,则必须在后续命令中将其用作 device_id 。 elementname 指定设备打开时加载) (设备元素的名称。 buffer buffer_size 设置波形音频设备使用的缓冲区的大小(以秒为单位)。 安装或配置波形音频设备时,会设置缓冲区的默认大小。 通常,缓冲区大小设置为 4 秒。 对于 MCIWAVE 设备,最小大小为 2 秒,最大大小为 9 秒。 parent hwnd 指定父窗口的窗口句柄。 共享 将设备或文件初始化为可共享。 除非在原始和后续打开命令中指定“可共享”,否则后续尝试 打开 设备或文件失败。 如果设备已打开且不可共享,MCI 将返回无效设备错误。
MCISEQ sequencer 和 MCIWAVE 设备不支持共享文件。style child 打开具有子窗口样式的窗口。 样式重叠 打开具有重叠窗口样式的窗口。 样式弹出窗口 打开具有弹出窗口样式的窗口。 style style_type 指示窗口样式。 type device_type 指定文件的设备类型。 -
lpszFlags
-
可以是“等待”、“通知”或两者。 有关这些标志的详细信息,请参阅 等待、通知和测试标志。
返回值
如果成功,则返回零,否则返回错误。
备注
MCI 为 CD 音频设备类型保留“cdaudio”,视频磁盘设备类型保留“videodisc”,MIDI 排序器设备类型保留“sequencer”,数字视频设备类型保留“AVIVideo”,波形音频设备类型保留“waveaudio”。
作为“type”标志的替代方法,MCI 可以根据文件使用的扩展名选择设备,如注册表或 SYSTEM.INI 文件的 [mci extension] 节中记录的那样。
MCI 可以使用文件接口指针或流接口指针打开 AVI 文件。 若要使用任一类型的接口指针打开文件,请指定 at 符号 (@) 后跟接口指针,以代替 lpszDevice 参数的文件或设备名称。 有关文件和流接口的详细信息,请参阅“ AVIFile 函数和宏”。
以下命令将打开“mysound”设备。
open new type waveaudio alias mysound buffer 6
使用设备名称“new”,波形驱动程序准备新的波形资源。 命令分配设备别名“mysound”并指定 6 秒的缓冲区。
如果将设备名称与文件名组合在一起,则可以消除“type”标志。 使用下列语法时,MCI 会识别此组合:
device_name ! element_name
感叹号将设备名称与文件名分隔开来。 感叹号不应用空格分隔。
以下示例将打开 RIGHT。使用“waveaudio”设备的 WAV 文件。
open waveaudio!right.wav
MCIWAVE 驱动程序需要异步波形音频设备。
要求
要求 | 值 |
---|---|
最低受支持的客户端 |
Windows 2000 Professional [仅限桌面应用] |
最低受支持的服务器 |
Windows 2000 Server [仅限桌面应用] |
标头 |
|