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


функция обратного вызова 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

Указатель на контекст устройства мини-driver камеры.

[in] PipeIndex

Задает индекс массового канала.

[in] Buffer

Указатель на буфер чтения или записи. Если этот параметр имеет значение NULL для запроса на чтение, USBCAMD извлекает данные SRB из очереди чтения потока, связанного с этим каналом. Запросы на запись с указателем буфера NULL разрешены только в закреплении по-прежнему, если запрос SRB_WRITE_DATA был отправлен в по-прежнему закрепление.

[in] BufferLength

Указывает длину буфера чтения и записи в байтах.

[in] CommandComplete

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

[in] CommandContext

Указатель на блок памяти, который передается в качестве аргумента в мини-driver камеры, определенный CommandCompleteFunction.

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

USBCAMD_BulkReadWrite возвращает STATUS_SUCCESS, если вызов выполнен успешно. Другие возможные коды ошибок включают:

Возвращаемый код Описание
STATUS_FILE_CLOSED Устройство было удалено.
STATUS_INVALID_PARAMETER USBCAMD может возвращать STATUS_INVALID_PARAMETER по нескольким причинам, в том числе:

Значение, переданное в аргументе PipeIndex, недопустимо.

Тип канала, указанного аргументом PipeIndex, представляет недопустимый тип канала.

Уже существует массовый запрос на чтение и запись. Аргумент буфера имеет значение NULL NULL.
STATUS_INSUFFICIENT_RESOURCES Для планирования передачи недостаточно ресурсов.

Замечания

USBCAMD может принимать один запрос на чтение и одну запись одновременно.

USBCAMD_BulkReadWrite недоступна в USBCAMD версии 1.0.

Требования

Требование Ценность
целевая платформа Настольный
заголовка usbcamdi.h (включая Usbcamdi.h)

См. также

CommandCompleteFunction

USBCAMD_INTERFACE