次の方法で共有


SERCX_BUFFER_DESCRIPTOR 構造体 (sercx.h)

SERCX_BUFFER_DESCRIPTOR構造体は、受信操作または送信操作のデータ バッファーを記述します。

構文

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

メンバー

Size

この構造体のサイズ (バイト単位)。 SerCxRetrieveReceiveBuffer メソッドと SerCxRetrieveTransmitBuffer メソッドは、このメンバーを使用して、呼び出し元が使用している構造体のバージョンを決定します。 この構造体のサイズは、Sercx.h ヘッダー ファイルの将来のバージョンで変更される可能性があります。

Buffer

バッファーの仮想メモリ アドレス。 バッファーのメモリが非ページです。

Length

バッファーで使用できるバイト数。 このサイズは、受信または送信操作によって転送できる最大バイト数を決定します。

注釈

シリアル コントローラー ドライバーは、この構造体の情報を使用して、受信操作中にデータを読み取るメモリ内の場所と、送信操作中にデータを書き込むメモリ内の場所を決定します。

有効な受信バッファーと有効な送信バッファーは、いつでも 1 つ以上存在することはできません。 コントローラー ドライバーは 、SerCxRetrieveReceiveBuffer メソッドを呼び出して受信バッファーを取得し、 SerCxRetrieveTransmitBuffer メソッドを呼び出して送信バッファーを取得します。 どちらのメソッドも、呼び出し元によって割り当てられた SERCX_BUFFER_DESCRIPTOR 構造体にバッファーの説明をコピーします。 これらのメソッドの 1 つを後続で呼び出すと、受信バッファーまたは送信バッファーに対して以前に発行された記述子がそれぞれ無効になります。 呼び出し元は、無効になったバッファー記述子によって記述されたバッファーにアクセスすることはできません。

SerCxRetrieveReceiveBuffer または SerCxRetrieveTransmitBuffer を連続して呼び出すことによって取得されるバッファーは、連続している保証はありません。

コントローラー ドライバーは、構造体がSerCxRetrieveReceiveBuffer メソッドまたは SerCxRetrieveTransmitBuffer メソッドに渡される前に、SERCX_BUFFER_DESCRIPTOR構造体を初期化するために、SERCX_BUFFER_DESCRIPTOR_INIT関数を呼び出す必要があります。 バッファー記述子を初期化した後は、再初期化せずに再利用できます。

要件

要件
サポートされている最小のクライアント Windows 8 以降でサポートされています。
Header sercx.h

こちらもご覧ください

SERCX_BUFFER_DESCRIPTOR_INIT

SerCxRetrieveReceiveBuffer

SerCxRetrieveTransmitBuffer