Partager via


structure SPB_TRANSFER_LIST (spb.h)

La structure SPB_TRANSFER_LIST décrit une séquence de transfert d’E/S.

Syntaxe

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

Membres

Size

Taille, en octets, de la structure SPB_TRANSFER_LIST . Cette valeur de taille n’inclut pas les éléments de tableau Transferts susceptibles de suivre cette structure. Si de nouveaux membres sont ajoutés aux versions futures de cette structure, la valeur Size peut être utilisée pour déterminer quelle version de la structure SPB_TRANSFER_LIST est utilisée.

Reserved

Réservé à l’utilisation par le système d’exploitation. Définit la valeur zéro.

TransferCount

Nombre d’éléments dans le tableau Transferts . Ce tableau contient au moins un élément.

Transfers[1]

Ce membre est le premier élément d’un tableau de structures SPB_TRANSFER_LIST_ENTRY . Chaque élément de tableau décrit un transfert individuel dans la séquence de transfert d’E/S. Si le tableau contient plusieurs éléments, les éléments de tableau supplémentaires suivent immédiatement la structure SPB_TRANSFER_LIST en mémoire. Les transferts sont effectués dans l’ordre dans lequel ils apparaissent dans le tableau, en commençant par le premier élément.

Remarques

La mémoire tampon d’entrée d’une requête IOCTL_SPB_EXECUTE_SEQUENCE commence par une structure de SPB_TRANSFER_LIST . Le premier transfert de la séquence de transfert d’E/S demandée est spécifié dans le membre Transferts de cette structure. Si la séquence contient plusieurs transferts, les éléments de tableau qui décrivent les transferts supplémentaires suivent immédiatement la structure SPB_TRANSFER_LIST .

La mémoire tampon d’entrée d’une requête IOCTL_SPB_FULL_DUPLEX commence par une structure SPB_TRANSFER_LIST . La structure SPB_TRANSFER_LIST pour cette requête spécifie toujours deux mémoires tampons. La première mémoire tampon, qui est décrite par le membre Transferts de cette structure, contient les données à écrire sur l’appareil. La deuxième mémoire tampon, qui est décrite par un élément de tableau qui suit immédiatement la structure SPB_TRANSFER_LIST , est utilisée pour contenir les données lues à partir de l’appareil.

Si votre pilote de contrôleur SPB prend en charge les demandes de contrôle d’E/S personnalisés (IOCTL) qui utilisent des tampons d’entrée ou de sortie, utilisez la structure SPB_TRANSFER_LIST pour décrire ces mémoires tampons. Pour plus d’informations, consultez Utilisation de la structure SPB_TRANSFER_LIST pour les IOCTL personnalisés.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Pris en charge à partir de Windows 8.
En-tête spb.h

Voir aussi