Команда open
Команда open инициализирует устройство. Все устройства MCI распознают эту команду.
Чтобы отправить эту команду, вызовите функцию mciSendString с параметром lpszCommand , как показано ниже.
_stprintf_s(
lpszCommand,
TEXT("open %s %s %s"),
lpszDevice,
lpszOpenFlags,
lpszFlags
);
-
lpszDevice
-
Идентификатор устройства MCI или драйвера устройства. Это может быть имя устройства (указанное в реестре или файле SYSTEM.INI) или имя файла драйвера устройства. Если указать имя файла драйвера устройства, при необходимости можно включить . Расширение DRV, но не следует включать путь к файлу.
-
lpszOpenFlags
-
Флаг, определяющий, что инициализировать. В следующей таблице перечислены типы устройств, которые распознают команду open и флаги, используемые каждым типом.
Значение Значение Значение cdaudio псевдоним device_aliasобщий type device_type digitalvideo alias device_aliaselementnamenostatic parent hwndsharable стиль дочернего стиля перекрывается стилем всплывающего окна style_typeтипа device_type overlay псевдоним device_aliasдочерним элементом родительского стиля hwndsharable стиль перекрытия всплывающего окна стиля 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 , и их значения.
Значение Значение device_alias псевдонима Задает альтернативное имя для данного устройства. Если он указан, он должен использоваться в качестве device_id в последующих командах. Elementname Указывает имя элемента устройства (файла), загружаемого при открытии устройства. buffer_size буфера Задает размер (в секундах) буфера, используемого устройством waveform-audio. Размер буфера по умолчанию устанавливается при установке или настройке устройства waveform-audio. Обычно размер буфера устанавливается равным 4 секундам. На устройстве MCIWAVE минимальный размер составляет 2 секунды, а максимальный — 9 секунд. родительский hwnd Указывает дескриптор родительского окна. общий доступ к Инициализирует устройство или файл как общий. Последующие попытки открыть устройство или файл завершаются сбоем, если в исходных и последующих командах открытия не указано значение "sharable". MCI возвращает ошибку недопустимого устройства, если устройство уже открыто и не доступно для совместного использования.
Устройства последовательности MCISEQ и MCIWAVE не поддерживают общие файлы.дочерний элемент стиля Открывает окно со стилем дочернего окна. стиль перекрывается Открывает окно с перекрывающимся стилем окна. всплывающее окно стиля Открывает окно со стилем всплывающего окна. style_type стиля Указывает стиль окна. type device_type Указывает тип устройства файла. -
lpszFlags
-
Может иметь значение "wait", "notify" или и то, и другое. Дополнительные сведения об этих флагах см. в разделе Флаги ожидания, уведомления и тестирования.
Возвращает ноль в случае успешного выполнения или ошибку в противном случае.
MCI резервирует "cdaudio" для типа звукового устройства CD, "videodisc" для типа устройства videodisc, "sequencer" для типа устройства MIDI sequencer, "AVIVideo" для типа цифрового видеоустройства и "waveaudio" для типа устройства waveform-audio.
В качестве альтернативы флагу "тип" MCI может выбрать устройство на основе расширения, используемого файлом, как указано в реестре или разделе [расширение mci] файла SYSTEM.INI.
MCI может открывать файлы AVI с помощью указателя файлового интерфейса или указателя интерфейса потока. Чтобы открыть файл с помощью любого типа указателя интерфейса, укажите знак at (@), за которым следует указатель интерфейса вместо имени файла или устройства для параметра lpszDevice . Дополнительные сведения об интерфейсах файлов и потоков см. в разделе Функции и макросы AVIFile.
Следующая команда открывает устройство mysound.
open new type waveaudio alias mysound buffer 6
С именем устройства "new" драйвер формы волны подготавливает новый ресурс waveform. Команда назначает псевдоним устройства mysound и задает 6-секундный буфер.
Вы можете исключить флаг "тип", если объединить имя устройства с именем файла. MCI распознает эту комбинацию при использовании следующего синтаксиса:
device_name ! element_name
Восклицательный знак отделяет имя устройства от имени файла. Восклицательный знак не должен быть разделен пробелами.
В следующем примере открывается функция RIGHT. WAV-файл с использованием устройства waveaudio.
open waveaudio!right.wav
Для драйвера MCIWAVE требуется асинхронное устройство waveform-audio.
Требование | Значение |
---|---|
Минимальная версия клиента |
Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера |
Windows 2000 Server [только классические приложения] |
Заголовок |
|