функция обратного вызова PFNUSBCAMD_BulkReadWrite (usbcamdi.h)
Служба USBCAMD_BulkReadWrite выполняет операцию чтения или записи в указанном массовом канале.
Синтаксис
PFNUSBCAMD_BulkReadWrite PfnusbcamdBulkreadwrite;
NTSTATUS PfnusbcamdBulkreadwrite(
[in] PVOID DeviceContext,
[in] USHORT PipeIndex,
[in] PVOID Buffer,
[in] ULONG BufferLength,
[in] PCOMMAND_COMPLETE_FUNCTION CommandComplete,
[in] PVOID CommandContext
)
{...}
Параметры
[in] DeviceContext
Указатель на контекст устройства мини-накопителя камеры.
[in] PipeIndex
Указывает индекс массового канала.
[in] Buffer
Указатель на буфер чтения или записи. Если для этого параметра задано значение NULL для запроса на чтение, USBCAMD извлекает SRB-данные из очереди чтения SRB потока, связанного с этим каналом. Запросы на запись с указателем буфера NULL разрешены для неподвижного контакта, только если запрос SRB_WRITE_DATA отправлен в неподвижный пин-код.
[in] BufferLength
Указывает длину буфера чтения и записи в байтах.
[in] CommandComplete
Указатель на мини-диск камеры, определенный commandCompleteFunction, который вызывается при завершении массового чтения или записи. Это значение может иметь значение NULL.
[in] CommandContext
Указатель на блок памяти, который передается в качестве аргумента в мини-диск камеры, определенный commandCompleteFunction.
Возвращаемое значение
USBCAMD_BulkReadWrite возвращает STATUS_SUCCESS, если вызов был успешным. Другие возможные коды ошибок:
Код возврата | Описание |
---|---|
STATUS_FILE_CLOSED | Устройство удалено. |
STATUS_INVALID_PARAMETER | USBCAMD может возвращать STATUS_INVALID_PARAMETER по ряду причин, в том числе: Значение, переданное в аргументе PipeIndex , является недопустимым. Тип канала, указанный аргументом PipeIndex , представляет недопустимый тип канала. Запрос на массовое чтение и запись уже существует. Аргумент Buffer имеет значение NULL. |
STATUS_INSUFFICIENT_RESOURCES | Недостаточно ресурсов для планирования переноса. |
Комментарии
USBCAMD может принимать один запрос на чтение и запись одновременно.
USBCAMD_BulkReadWrite недоступно в USBCAMD версии 1.0.
Требования
Требование | Значение |
---|---|
Целевая платформа | Персональный компьютер |
Верхняя часть | usbcamdi.h (включая Usbcamdi.h) |