Freigeben über


SERCX_BUFFER_DESCRIPTOR-Struktur (sercx.h)

Die SERCX_BUFFER_DESCRIPTOR-Struktur beschreibt einen Datenpuffer für einen Empfangs- oder Übertragungsvorgang.

Syntax

typedef struct SERCX_BUFFER_DESCRIPTOR {
  USHORT Size;
  PUCHAR Buffer;
  ULONG  Length;
} SERCX_BUFFER_DESCRIPTOR, *PSERCX_BUFFER_DESCRIPTOR;

Member

Size

Die Größe (in Bytes) dieser Struktur. Die Methoden SerCxRetrieveReceiveBuffer und SerCxRetrieveTransmitBuffer verwenden diesen Member, um zu bestimmen, welche Version der Struktur der Aufrufer verwendet. Die Größe dieser Struktur kann sich in zukünftigen Versionen der Sercx.h-Headerdatei ändern.

Buffer

Die Adresse des virtuellen Speichers des Puffers. Der Arbeitsspeicher für den Puffer ist nicht auslagert.

Length

Die Anzahl der im Puffer verfügbaren Bytes. Diese Größe bestimmt die maximale Anzahl von Bytes, die durch den Empfangs- oder Übertragungsvorgang übertragen werden können.

Hinweise

Der Treiber für serielle Controller verwendet die Informationen in dieser Struktur, um zu bestimmen, wo im Arbeitsspeicher Während eines Empfangsvorgangs Daten gelesen werden sollen und wo im Arbeitsspeicher Während eines Übertragungsvorgangs Daten geschrieben werden sollen.

Es kann jederzeit nicht mehr als einen gültigen Empfangspuffer und einen gültigen Übertragungspuffer geben. Der Controllertreiber ruft die SerCxRetrieveReceiveBuffer-Methode auf, um den Empfangspuffer abzurufen, und ruft die SerCxRetrieveTransmitBuffer-Methode auf, um den Übertragungspuffer abzurufen. Beide Methoden kopieren Pufferbeschreibungen in aufruferseitig zugewiesene SERCX_BUFFER_DESCRIPTOR-Strukturen . Durch einen nachfolgenden Aufruf einer dieser Methoden wird der zuvor ausgegebene Deskriptor für den Empfangs- bzw. Übertragungspuffer ungültig. Der Aufrufer darf nicht auf einen Puffer zugreifen, der durch einen nicht mehr gültigen Pufferdeskriptor beschrieben wird.

Die Puffer, die durch aufeinander folgende Aufrufe von SerCxRetrieveReceiveBuffer oder SerCxRetrieveTransmitBuffer abgerufen werden, sind nicht garantiert zusammenhängend.

Der Controllertreiber muss die SERCX_BUFFER_DESCRIPTOR_INIT-Funktion aufrufen, um eine SERCX_BUFFER_DESCRIPTOR-Struktur zu initialisieren, bevor die Struktur an die SerCxRetrieveReceiveBuffer - oder SerCxRetrieveTransmitBuffer-Methode übergeben wird. Nachdem ein Pufferdeskriptor initialisiert wurde, kann er wiederverwendet werden, ohne erneut initialisiert zu werden.

Anforderungen

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

Weitere Informationen

SERCX_BUFFER_DESCRIPTOR_INIT

SerCxRetrieveReceiveBuffer

SerCxRetrieveTransmitBuffer