Команда MCI_SET предназначена для установки режима работы устройства. Вместе с этой командой используется блок параметров в формате структуры MCI_SET_PARMS : typedef struct tagMCI_SET_PARMS { DWORD dwCallback; DWORD dwTimeFormat; DWORD dwAudio; } MCI_SET_PARMS; typedef MCI_SET_PARMS FAR *LPMCI_SET_PARMS;
Поле dwTimeFormat определяет формат времени для устройства, поле dwAudio определяет выходной канал.
Приведем список флагов, которые используются вместе с командой MCI_SET:
Флаг | Описание |
MCI_NOTIFY | Если установлен этот флаг, после завершения команды функции окна, адрес которой передан через поле dwCallback, будет послано сообщение MM_MCINOTIFY |
MCI_WAIT | Функция mciSendCommand вернет управление только после завершения процесса |
MCI_SET_AUDIO | Включение или выключение каналов, используется вместе с флагами MCI_SET_ON и MCI_SET_OFF. Поле dwAudio содержит номера канала. Дополнительно можно указать следующие константы:MCI_SET_AUDIO_ALL все каналыMCI_SET_AUDIO_LEFT левый каналMCI_SET_AUDIO_RIGHT правый канал |
MCI_SET_DOOR_CLOSED | По этой команде устройство защелкивает компакт-диск |
MCI_SET_DOOR_OPEN | Освобождение носителя данных |
MCI_SET_VIDEO | Включение или выключение видеосигнала, используется вместе с флагами MCI_SET_ON и MCI_SET_OFF |
MCI_SET_TIME_FORMAT | Установить формат времени. Используется вместе со следующими константами:MCI_FORMAT_MSF минуты, секунды, фреймы;MCI_FORMAT_MILLISECONDS в миллисекундах;MCI_FORMAT_TMSF треки, минуты, секунды, фреймы |
MCI_SET_ON | Включение заданного канала |
MCI_SET_OFF | Выключение заданного канала |
При использовании формата времени MCI_FORMAT_MSF старший байт старшего слова поля dwTimeFormat не используется, младший содержит номер фрейма. Старший байт младшего слова содержит секунды, младший - минуты. Формат времени MCI_FORMAT_TMSF аналогичный, за исключением того, что старший байт старшего слова содержит номер дорожки.