Freigeben über


PFNUSBCAMD_BulkReadWrite Rückruffunktion (usbcamdi.h)

Der USBCAMD_BulkReadWrite-Dienst führt einen Lese- oder Schreibvorgang für die angegebene Massenpipe aus.

Syntax

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
)
{...}

Parameter

[in] DeviceContext

Zeiger auf den Gerätekontext des Kamera-Minitreibers.

[in] PipeIndex

Gibt den Index der Massenpipe an.

[in] Buffer

Zeiger auf den Lese- oder Schreibpuffer. Wenn dieser Parameter für eine Leseanforderung auf NULL festgelegt ist, ruft USBCAMD einen Daten-SRB aus der SRB-Lesewarteschlange des Streams ab, der dieser Pipe zugeordnet ist. Schreibanforderungen mit einem NULL-Pufferzeiger sind nur auf der noch-Pin zulässig, wenn eine SRB_WRITE_DATA Anforderung an die noch-Pin gesendet wurde.

[in] BufferLength

Gibt die Länge des Lese-/Schreibpuffers in Bytes an.

[in] CommandComplete

Zeiger auf einen von der Kamera minidriver definierten BefehlCompleteFunction, der aufgerufen wird, wenn das Massenlese- oder Schreibvorgang abgeschlossen ist. Dieser Wert kann NULL sein.

[in] CommandContext

Zeiger auf einen Speicherblock, der als Argument an den kameraminidriver definierten CommandCompleteFunction übergeben wird.

Rückgabewert

USBCAMD_BulkReadWrite gibt STATUS_SUCCESS zurück, wenn der Aufruf erfolgreich war. Weitere mögliche Fehlercodes sind:

Rückgabecode Beschreibung
STATUS_FILE_CLOSED Das Gerät wurde entfernt.
STATUS_INVALID_PARAMETER USBCAMD kann STATUS_INVALID_PARAMETER aus verschiedenen Gründen zurückgeben, darunter:

Der im PipeIndex-Argument übergebene Wert ist ungültig.

Der Vom Argument PipeIndex angegebene Pipetyp stellt einen ungültigen Pipetyp dar.

Eine Massenlese-/Schreibanforderung ist bereits vorhanden. Das Buffer-Argument ist NULL.
STATUS_INSUFFICIENT_RESOURCES Es gibt nicht genügend Ressourcen, um eine Übertragung zu planen.

Hinweise

USBCAMD kann jeweils eine Lese- und eine Schreibanforderung akzeptieren.

USBCAMD_BulkReadWrite ist in USBCAMD Version 1.0 nicht verfügbar.

Anforderungen

Anforderung Wert
Zielplattform Desktop
Kopfzeile usbcamdi.h (einschließlich Usbcamdi.h)

Weitere Informationen

CommandCompleteFunction

USBCAMD_INTERFACE