驱动程序的默认行为
[与此页面关联的功能 MCI 是旧版功能。 它已被 MediaPlayer 取代。 MediaPlayer 已针对Windows 10和Windows 11进行了优化。 如果可能,Microsoft 强烈建议新代码使用 MediaPlayer 而不是 MCI。 如果可能,Microsoft 建议重写使用旧 API 的现有代码以使用新 API。]
在许多情况下,MCI 命令规范定义特定设备类型的驱动程序的默认值和行为。 由于多媒体设备可以具有多种功能 (和) 限制,因此可能存在未定义的行为区域。 此外,驱动程序可能会根据设备的功能以不同的方式处理异常。
例如,请考虑使用 mciSendString 函数发送到波形音频驱动程序的以下命令:
mciSendString("open sound.wav alias sound", lpszReturnString,
lstrlen(lpszReturnString), NULL);
mciSendString("play sound notify", lpszReturnString,
lstrlen(lpszReturnString), NULL);
mciSendString("record sound from 0 notify", lpszReturnString,
lstrlen(lpszReturnString), NULL);
record 命令返回“参数范围外”值,并停止由上一个播放命令启动的播放。 人们可能希望驱动程序在停止播放之前验证录制命令,但驱动程序首先停止播放。