SPB_TRANSFER_LIST-Struktur (spb.h)

Die SPB_TRANSFER_LIST-Struktur beschreibt eine E/A-Übertragungssequenz.

Syntax

typedef struct SPB_TRANSFER_LIST {
  ULONG                   Size;
  ULONG                   Reserved;
  ULONG                   TransferCount;
  SPB_TRANSFER_LIST_ENTRY Transfers[1];
} SPB_TRANSFER_LIST, *PSPB_TRANSFER_LIST;

Member

Size

Die Größe der SPB_TRANSFER_LIST-Struktur in Bytes. Dieser Größenwert enthält keine Transfers-Arrayelemente , die dieser Struktur folgen könnten. Wenn neue Member zu zukünftigen Versionen dieser Struktur hinzugefügt werden, kann der Wert Größe verwendet werden, um zu bestimmen, welche Version der SPB_TRANSFER_LIST-Struktur verwendet wird.

Reserved

Reserviert für die Verwendung durch das Betriebssystem. Auf NULL festlegen.

TransferCount

Die Anzahl der Elemente im Transfers-Array . Dieses Array enthält mindestens ein Element.

Transfers[1]

Dieses Element ist das erste Element in einem Array von SPB_TRANSFER_LIST_ENTRY Strukturen. Jedes Arrayelement beschreibt eine individuelle Übertragung in der E/A-Übertragungssequenz. Wenn das Array mehr als ein Element enthält, folgen die zusätzlichen Arrayelemente sofort der SPB_TRANSFER_LIST Struktur im Arbeitsspeicher. Die Übertragungen werden in der Reihenfolge durchgeführt, in der sie im Array angezeigt werden, beginnend mit dem ersten Element.

Hinweise

Der Eingabepuffer für eine IOCTL_SPB_EXECUTE_SEQUENCE-Anforderung beginnt mit einer SPB_TRANSFER_LIST-Struktur . Die erste Übertragung in der angeforderten E/A-Übertragungssequenz wird im Transferelement dieser Struktur angegeben. Wenn die Sequenz mehrere Übertragungen enthält, folgen die Arrayelemente, die die zusätzlichen Übertragungen beschreiben, unmittelbar der SPB_TRANSFER_LIST-Struktur .

Der Eingabepuffer für eine IOCTL_SPB_FULL_DUPLEX-Anforderung beginnt mit einer SPB_TRANSFER_LIST-Struktur . Die SPB_TRANSFER_LIST-Struktur für diese Anforderung gibt immer zwei Puffer an. Der erste Puffer, der vom Transferelement dieser Struktur beschrieben wird, enthält die Daten, die auf das Gerät geschrieben werden sollen. Der zweite Puffer, der durch ein Arrayelement beschrieben wird, das unmittelbar der SPB_TRANSFER_LIST-Struktur folgt, wird verwendet, um die vom Gerät gelesenen Daten zu halten.

Wenn Ihr SPB-Controllertreiber benutzerdefinierte I/O-Steuerungsanforderungen (IOCTL) unterstützt, die Eingabe- oder Ausgabepuffer verwenden, verwenden Sie die SPB_TRANSFER_LIST-Struktur , um diese Puffer zu beschreiben. Weitere Informationen finden Sie unter Verwenden der SPB_TRANSFER_LIST-Struktur für benutzerdefinierte IOCTLs.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Unterstützt ab Windows 8.
Kopfzeile spb.h

Weitere Informationen