Поделиться через


команда MCI_RESERVE

Команда MCI_RESERVE выделяет непрерывное дисковое пространство для рабочей области экземпляра драйвера устройства для последующей записи. Цифровые видеоустройства распознают эту команду.

Чтобы отправить эту команду, вызовите функцию mciSendCommand со следующими параметрами.

MCIERROR mciSendCommand(
  MCIDEVICEID wDeviceID, 
  MCI_RESERVE, 
  DWORD dwFlags, 
  (DWORD) (LPMCI_DGV_RESERVE_PARMS) lpReserve
);

Параметры

wDeviceID

Идентификатор устройства MCI, которое будет получать сообщение команды.

Dwflags

MCI_NOTIFY, MCI_WAIT или MCI_TEST. Сведения об этих флагах см. в разделе Флаги ожидания, уведомления и тестирования.

lpReserve

Указатель на структуру MCI_DGV_RESERVE_PARMS .

Возвращаемое значение

Возвращает ноль при успешном выполнении или ошибке в противном случае.

Комментарии

Если рабочая область содержит несохраненные данные, эти данные теряются. Если место на диске не зарезервировано до записи, команда MCI_RECORD выполняет неявное резервирование с параметрами по умолчанию для конкретного устройства. В некоторых реализациях резервирование не требуется и может игнорироваться драйвером устройства. Явное резервирование места позволяет лучше управлять временем задержки выделения диска, объемом выделенного пространства и местом выделения дискового пространства. Объем и расположение дискового пространства, уже зарезервированного для этого экземпляра устройства, можно изменить, повторно отправив MCI_RESERVE. Все выделенное и по-прежнему неиспользуемое дисковое пространство не освобождается, пока не будут сохранены все записанные данные или пока экземпляр драйвера устройства не будет закрыт.

Если видео отключено с флагом MCI_OFF команды MCI_SETVIDEO , зарезервированное пространство не будет содержать видео. Если звук отключен с флагом MCI_OFF команды MCI_SETAUDIO , зарезервированное пространство не будет включать звук. Если звук и видео отключены или запрошенный размер равен нулю, пространство не зарезервировано и все существующее зарезервированное пространство освобождается.

К цифровым видеоустройствам применяются следующие дополнительные флаги:

MCI_DGV_RESERVE_IN

Элемент lpstrPath структуры, определяемой lpReserve , содержит адрес буфера, содержащий расположение временного файла. Буфер содержит только диск и путь к каталогу файла, используемого для хранения записанных данных; имя файла указывается драйвером устройства. Этот временный файл удаляется при закрытии экземпляра устройства, если он не сохранен явным образом. Если этот флаг опущен, драйвер устройства указывает, где выделяется место на диске.

MCI_DGV_RESERVE_SIZE

Элемент dwSize структуры, определяемой lpReserve , указывает приблизительный объем дискового пространства, резервируемого в рабочей области для записи. Значение указывается в формате текущего времени. Объем места на диске оценивается на основе запрошенного времени и значения формата файла, алгоритма видео и звука, а также значений качества. Если этот флаг опущен, драйвер устройства может использовать значение по умолчанию, которое он определяет.

Требования

Требование Значение
Минимальная версия клиента
Windows 2000 Professional [только классические приложения]
Минимальная версия сервера
Windows 2000 Server [только классические приложения]
Заголовок
Mmsystem.h (включая Windows.h)

См. также раздел

MCI

Команды MCI