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


Метод IDiscFormat2RawCD::WriteMedia (imapi2.h)

Записывает необработанное изображение DAO-96 на пустой носитель, используя MSF 95:00:00 в качестве начального адреса.

Синтаксис

HRESULT WriteMedia(
  [in] IStream *data
);

Параметры

[in] data

Интерфейс IStream потока данных для записи.

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

S_OK возвращается при успешном выполнении, но в результате реализации могут быть возвращены другие коды успешного выполнения. Следующие коды ошибок обычно возвращаются при сбое операции, но не представляют единственные возможные значения ошибок:

Код возврата Описание
E_POINTER
Недопустимый указатель.

Значение: 0x80004003

E_IMAPI_DF2RAW_STREAM_NOT_SUPPORTED
Указанный аудиопоток недопустим.

Значение: 0xC0AA060D

E_IMAPI_DF2RAW_MEDIA_IS_NOT_PREPARED
Запрошенная операция действительна, только если носитель подготовлен.

Значение: 0xC0AA0602

E_IMAPI_DF2RAW_WRITE_IN_PROGRESS
В настоящее время выполняется операция записи.

Значение: 0xC0AA0600

E_IMAPI_DF2RAW_MEDIA_IS_NOT_BLANK
Поддерживается только пустой носитель CD-R/RW.

Значение: 0xC0AA0606

E_IMAPI_DF2RAW_STREAM_LEADIN_TOO_SHORT
Поток не содержит достаточного количества секторов в свинце для текущего носителя.

Значение: 0xC0AA060F

E_INVALIDARG
Один или несколько аргументов являются недопустимыми.

Значение: 0x80070057

E_IMAPI_DF2RAW_NOT_ENOUGH_SPACE
На носителе недостаточно места для добавления предоставленного сеанса.

Значение: 0xC0AA0609

E_FAIL
Неопределенный сбой.

Значение: 0x80004005

E_OUTOFMEMORY
Не удалось выделить необходимую память.

Значение: 0x8007000E

E_IMAPI_RECORDER_COMMAND_TIMEOUT
Устройству не удалось принять команду в течение периода ожидания. Это может быть вызвано тем, что устройство перешло в несогласованное состояние, или может потребоваться увеличить время ожидания для команды.

Значение: 0xC0AA020D

E_IMAPI_RECORDER_INVALID_RESPONSE_FROM_DEVICE
Устройство сообщило о непредвиденных или недопустимых данных для команды.

Значение: 0xC0AA02FF

E_IMAPI_RECORDER_MEDIA_UPSIDE_DOWN
Носитель вставляется вверх ногами.

Значение: 0xC0AA0204

E_IMAPI_RECORDER_MEDIA_BECOMING_READY
Диск сообщил, что он находится в процессе подготовки. Повторите запрос позже.

Значение: 0xC0AA0205

E_IMAPI_RECORDER_MEDIA_NO_MEDIA
На устройстве нет носителя.

Значение: 0xC0AA0202

E_IMAPI_RECORDER_MEDIA_FORMAT_IN_PROGRESS
В настоящее время форматируется носитель. Дождитесь завершения форматирования, прежде чем пытаться использовать носитель.

Значение: 0xC0AA0206

E_IMAPI_RECORDER_MEDIA_BUSY
Диск сообщил, что он выполняет длительную операцию, например завершает запись. Диск может быть непригодным для использования в течение длительного периода времени.

Значение: 0xC0AA0207

E_IMAPI_LOSS_OF_STREAMING
Не удалось выполнить запись, так как диск не получил данные достаточно быстро, чтобы продолжить запись. Перемещение исходных данных на локальный компьютер, снижение скорости записи или включение параметра "буфер недостаточной свободы" может устранить эту проблему.

Значение: 0xC0AA0300

E_IMAPI_RECORDER_MEDIA_INCOMPATIBLE
Носитель несовместим или имеет неизвестный физический формат.

Значение: 0xC0AA0203

E_IMAPI_RECORDER_DVD_STRUCTURE_NOT_PRESENT
Структура DVD отсутствует. Это может быть вызвано несовместимыми дисками и носителями.

Значение: 0xC0AA020E

E_IMAPI_RECORDER_NO_SUCH_MODE_PAGE
Устройство сообщило, что запрошенная страница режима (и тип) отсутствует.

Значение: 0xC0AA0201

E_IMAPI_RECORDER_INVALID_MODE_PARAMETERS
Диск сообщил, что сочетание параметров, предоставленных на странице режима для команды MODE SELECT, не поддерживается.

Значение: 0xC0AA0208

E_IMAPI_RECORDER_MEDIA_WRITE_PROTECTED
Диск сообщил, что носитель защищен от записи.

Значение: 0xC0AA0209

E_IMAPI_RECORDER_MEDIA_SPEED_MISMATCH
Скорость носителя несовместима с устройством. Это может быть вызвано использованием носителя с более высокой или низкой скоростью, чем диапазон скоростей, поддерживаемый устройством.

Значение: 0xC0AA020F

HRESULT_FROM_WIN32(ERROR_INVALID_HANDLE)
Указанный дескриптор недопустим.

Значение: 6

HRESULT_FROM_WIN32(ERROR_DEV_NOT_EXIST)
Указанный сетевой ресурс или устройство больше не доступны.

Значение: 55

E_IMAPI_RECORDER_LOCKED
Устройство, связанное с этим устройством записи во время последней операции, было заблокировано исключительно, что привело к сбою этой операции.

Значение: 0xC0AA0210

E_IMAPI_REQUEST_CANCELLED
Запрос отменен.

Значение: 0xC0AA0002

Комментарии

Перед вызовом этого метода необходимо вызвать методы IDiscFormat2RawCD::p ut_Recorder и IDiscFormat2RawCD::P repareMedia .

Также следует рассмотреть возможность вызова следующих методов, если их значения по умолчанию не подходят для вашего приложения:

Этот метод является синхронным. Чтобы определить ход выполнения операции записи, необходимо реализовать интерфейс DDiscFormat2RawCDEvents . Примеры реализации обработчика событий в скрипте см. в разделе Мониторинг хода выполнения с событиями.

Первый сектор необработанного образа записывается в MSF 95:00:00. Если образ RAW имеет другой первый сектор, используйте метод IDiscFormat2RawCD::WriteMedia2 .

Этот метод использует метод IStream::Seek для достижения соответствующего начального расположения на изображении для текущего носителя. Если метод IStream::Seek завершается сбоем, метод будет вызывать метод IStream::Read несколько раз, пока не достигнет начального сектора.

Стандарт DAO-96 позволяет записывать данные любого типа на компакт-диск. Одним из распространенных способов использования является запись аудио компакт-диски без 2-секундного разрыва между дорожками.

DAO-96 также поддерживает варианты содержимого подкода, такие как CD+G и CD-Text.

Требования

   
Минимальная версия клиента Windows Vista, Windows XP с пакетом обновления 2 (SP2) [только классические приложения]
Минимальная версия сервера Windows Server 2003 [только классические приложения]
Целевая платформа Windows
Header imapi2.h

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

IDiscFormat2RawCD

IDiscFormat2RawCD::WriteMedia2