Partager via


IOCTL_EHSTOR_BANDMGMT_ENUMERATE_BANDS IOCTL (ehstorbandmgmt.h)

Cette IOCTL_EHSTOR_BANDMGMT_ENUMERATE_BANDS demande est envoyée pour récupérer la liste des bandes d’un périphérique de stockage sous gestion des bandes. Les informations de bande sont retournées dans une table d’entrées de bande qui inclut l’emplacement de la bande et les propriétés de sécurité.

Code principal

IRP_MJ_DEVICE_CONTROL

Mémoire tampon d'entrée

La mémoire tampon sur Irp-AssociatedIrp.SystemBuffer> doit contenir une structure ENUMERATE_BANDS_PARAMETERS.

Longueur de la mémoire tampon d’entrée

Parameters.DeviceIoControl.InputBufferLength indique la taille, en octets, de la mémoire tampon, qui doit avoir au moins la taille de (ENUMERATE_BANDS_PARAMETERS).

Mémoire tampon de sortie

La mémoire tampon dans Irp-AssociatedIrp.SystemBuffer> contient une structure BAND_TABLE suivie d’entrées de bande BandTableEntryCount.

Longueur de la mémoire tampon de sortie

Longueur d’une structure BAND_TABLE suivie des entrées de bande BandTableEntryCount .

Bloc d’état

Le champ Informations contient le nombre d’octets retournés dans la mémoire tampon de sortie. L’une des valeurs suivantes peut être retournée dans le champ État .

Valeur d’état Description
STATUS_SUCCESS Les fonctionnalités de sécurité sur le périphérique de stockage ont été désactivées.
STATUS_INVALID_DEVICE_REQUEST Le périphérique de stockage ne prend pas en charge la gestion des bandes.
STATUS_INVALID_BUFFER_SIZE La taille de la mémoire tampon d’entrée n’est pas valide.
STATUS_INVALID_PARAMETER Les informations contenues dans la mémoire tampon d’entrée ne sont pas valides.
STATUS_NOT_FOUND Aucune bande n’est configurée pour les paramètres d’énumération fournis.
STATUS_BUFFER_OVERFLOW Une mémoire tampon n’est pas fournie ou sa taille est définie sur zéro. La taille requise est retournée dans le champ Informations .
STATUS_IO_DEVICE_ERROR Échec de la communication. Le périphérique de stockage peut être incompatible avec les protocoles de sécurité.
STATUS_BUFFER_TOO_SMALL La mémoire tampon de sortie fournie n’est pas assez grande pour contenir les données de sortie retournées.

Remarques

Un pilote ou une application peut interroger la taille de mémoire tampon de sortie nécessaire en définissant la mémoire tampon de sortie de la requête sur NULL et la taille de sortie sur 0. La requête IOCTL_EHSTOR_BANDMGMT_ENUMERATE_BANDS retourne avec le champ État du bloc IoStatus défini sur STATUS_BUFFER_OVERFLOW et le champ Informations contient la taille de mémoire tampon requise.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Disponible à partir de Windows 8.
En-tête ehstorbandmgmt.h (inclure EhStorBandMgmt.h)

Voir aussi

BAND_TABLE

ENUMERATE_BANDS_PARAMETERS