Мультимедиа для Windows© Александр Фролов, Григорий ФроловТом 15, М.: Диалог-МИФИ, 1994, 284 стр. 4.2. Интерфейс управляющих сообщений MCIИспользование интерфейса управляющих сообщений для проигрывания mid-файлов аналогично использованию этого интерфейса для проигрывания wav-файлов. Перечислим кратко допустимые коды управляющих сообщений и самые нужные параметры, специфические для драйвера mciseq.drv. MCI_OPEN Устройство sequencer открывается командой MCI_OPEN с использованием структуры MCI_OPEN_PARMS, определенной в файле mmsystem.h. Поле lpstrDeviceType в этой структуре должно содержать указатель на строку имени устройства, или константный идентификатор устройства. Для устройства sequencer вы можете указать имя "sequencer " или константу MCI_DEVTYPE_SEQUENCER . Через параметр lpstrElementName передается указатель на путь к проигрываемому mid-файлу. MCI_CLOSE Эта команда закрывает устройство. Ее необходимо выдавать после завершения работы с устройством. MCI_PLAY Команда MCI_PLAY предназначена для проигрывания. Для mid-файлов она используется точно таким же образом, что и для wav-файлов. MCI_PAUSE Команда MCI_PAUSE приостанавливает выполнение операции проигрывания. MCI_RESUME Эта команда не поддерживается драйвером mciseq.drv . Используйте вместо нее команду MCI_PLAY без указания позиции (для запуска проигрывания с текущей позиции). MCI_STOP Команда MCI_STOP останавливает выполнение операции проигрывания. MCI_SEEK Команда MCI_SEEK позволяет выполнять позиционирование в пределах mid-файла. MCI_BREAK С помощью команды MCI_BREAK указывается виртуальный код клавиши, с помощью которой можно прервать выполнение операции. MCI_GETDEVCAPS С помощью команды MCI_GETDEVCAPS можно определить возможности устройства. MCI_INFO С помощью этой команды можно получить информацию об устройстве в виде текстовой строки, такую как описание аппаратуры, имя файла, связанного с устройством. MCI_SYSINFO С помощью этой команды можно получить системную информацию об устройстве в виде текстовой строки. MCI_STATUS Команда MCI_STATUS используется для определения текущего состояния устройства. MCI_SET Команда MCI_SET предназначена для установки режима работы устройства. MCI_COPY Команда MCI_COPY предназначена для копирования данных в универсальный буфер обмена Clipboard. Для нее используется блок параметров в формате структуры MCI_GENERIC_PARMS, флаги MCI_NOTIFY и MCI_WAIT. MCI_PASTE Команда MCI_PASTE вставляет данные из Clipboard в текущий буфер устройства. Для нее, как и для команды MCI_COPY, используется блок параметров в формате структуры MCI_GENERIC_PARMS, флаги MCI_NOTIFY и MCI_WAIT. MCI_CUT Команда MCI_CUT удаляет данные из текущего буфера устройства и копирует их в универсальный буфер обмена Clipboard. Для нее используется блок параметров в формате структуры MCI_GENERIC_PARMS, флаги MCI_NOTIFY и MCI_WAIT. MCI_DELETE Команда MCI_DELETE удаляет данные из текущего буфера устройства без копирования их в Clipboard. MCI_LOAD Команда MCI_LOAD предназначена для загрузки файла. |