次の方法で共有


SPB_TRANSFER_LIST構造体 (spb.h)

SPB_TRANSFER_LIST 構造体は、I/O 転送シーケンスを記述します。

構文

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

メンバーズ

Size

SPB_TRANSFER_LIST 構造体のサイズ (バイト単位)。 このサイズ値には、この構造体に続く可能性がある配列要素 転送 は含まれません。 この構造体の将来のバージョンに新しいメンバーが追加された場合、Size 値を使用して、使用されている SPB_TRANSFER_LIST 構造体のバージョンを判断できます。

Reserved

オペレーティング システムで使用するために予約されています。 0 に設定します。

TransferCount

転送 配列内の要素の数。 この配列には、少なくとも 1 つの要素が含まれています。

Transfers[1]

このメンバーは、SPB_TRANSFER_LIST_ENTRY 構造体の配列の最初の要素です。 各配列要素は、I/O 転送シーケンス内の個々の転送を記述します。 配列に複数の要素が含まれている場合、追加の配列要素はメモリ内の SPB_TRANSFER_LIST 構造体のすぐ後に続きます。 転送は、最初の要素から始まる配列に表示される順序で実行されます。

備考

IOCTL_SPB_EXECUTE_SEQUENCE 要求の入力バッファーは、SPB_TRANSFER_LIST 構造体で始まります。 要求された I/O 転送シーケンスの最初の転送は、この構造体の Transfer メンバーで指定されます。 シーケンスに複数の転送が含まれている場合、追加の転送を記述する配列要素は、SPB_TRANSFER_LIST 構造体の直後に続きます。

IOCTL_SPB_FULL_DUPLEX 要求の入力バッファーは、SPB_TRANSFER_LIST 構造体で始まります。 この要求の SPB_TRANSFER_LIST 構造体は、常に 2 つのバッファーを指定します。 この構造体の Transfers メンバーによって記述される最初のバッファーには、デバイスに書き込むデータが含まれています。 2 番目のバッファーは、SPB_TRANSFER_LIST 構造体の直後にある配列要素によって記述され、デバイスから読み取られたデータを保持するために使用されます。

SPB コントローラー ドライバーが、入力バッファーまたは出力バッファーを使用するカスタム I/O 制御 (IOCTL) 要求をサポートしている場合は、SPB_TRANSFER_LIST 構造体を使用してこれらのバッファーを記述します。 詳細については、「カスタム IOCTL のSPB_TRANSFER_LIST構造の使用」を参照してください。

必要条件

要件 価値
サポートされる最小クライアント Windows 8 以降でサポートされています。
ヘッダー spb.h

関連項目