IOCTL_EHSTOR_BANDMGMT_ENUMERATE_BANDS IOCTL (ehstorbandmgmt.h)
Cette demande de IOCTL_EHSTOR_BANDMGMT_ENUMERATE_BANDS est envoyée pour récupérer la liste des bandes d’un appareil de stockage sous gestion de bande. 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
Mémoire tampon d’entrée
La mémoire tampon à 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 être au moins taille de (ENUMERATE_BANDS_PARAMETERS).
Mémoire tampon de sortie
La mémoire tampon à 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 d’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 Status.
Valeur d’état | Description |
---|---|
STATUS_SUCCESS | Les fonctionnalités de sécurité sur l’appareil de stockage ont été désactivées. |
STATUS_INVALID_DEVICE_REQUEST | L’appareil 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 définie sur zéro. La taille requise est retournée dans le champ Informations. |
STATUS_IO_DEVICE_ERROR | Échec de la communication. L’appareil 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 suffisamment 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 pour la requête sur NULL et la taille de sortie sur 0. La demande de 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.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Disponible à partir de Windows 8. |
d’en-tête | ehstorbandmgmt.h (include EhStorBandMgmt.h) |
Voir aussi
ENUMERATE_BANDS_PARAMETERS