Поведение драйверов по умолчанию
[Функция, связанная с этой страницей, MCI, является устаревшей функцией. Он был заменен MediaPlayer. MediaPlayer оптимизирован для Windows 10 и Windows 11. Корпорация Майкрософт настоятельно рекомендует по возможности использовать MediaPlayer вместо MCI. Корпорация Майкрософт предлагает переписать существующий код, использующий устаревшие API, чтобы по возможности использовать новые API.]
Во многих ситуациях спецификации команд MCI определяют значения по умолчанию и поведение для драйверов определенного типа устройства. Так как мультимедийные устройства могут иметь широкий спектр функций (и ограничений), могут быть неопределенные области поведения. Кроме того, драйверы могут обрабатывать исключения по-разному в зависимости от возможностей устройства.
Например, рассмотрим следующие команды, отправленные в драйвер waveform-audio с помощью функции 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 возвращает значение "Параметр вне диапазона" и останавливает воспроизведение, запущенное предыдущей командой воспроизведения . Можно ожидать, что драйвер проверит команду записи перед остановкой воспроизведения, но драйвер сначала останавливает воспроизведение.