IOCTL_STORAGE_DIAGNOSTIC IOCTL (ntddstor.h)
IOCTL_STORAGE_DIAGNOSTIC est utilisé pour interroger les données de diagnostic à partir de la pile de pilotes de stockage.
Code principal
Mémoire tampon d'entrée
Irp->AssociatedIrp.SystemBuffer contient une structure STORAGE_DIAGNOSTIC_REQUEST qui décrit la demande de diagnostic effectuée sur la pile de pilotes de stockage.
Longueur de la mémoire tampon d’entrée
Parameters.DeviceIoControl.InputBufferLength indique la taille, en octets, de la mémoire tampon de paramètre sur Irp-AssociatedIrp.SystemBuffer>, qui doit être >= sizeof(STORAGE_DIAGNOSTIC_REQUEST)
.
Mémoire tampon de sortie
Le pilote retourne la sortie à la mémoire tampon à l’adresse Irp-AssociatedIrp.SystemBuffer>. Cette mémoire tampon contient une structure STORAGE_DIAGNOSTIC_DATA avec des données de diagnostic sur la pile de pilotes de stockage.
Longueur de la mémoire tampon de sortie
Parameters.DeviceIoControl.OutputBufferLength indique la taille, en octets, de la mémoire tampon de paramètre sur Irp-AssociatedIrp.SystemBuffer>, qui doit être >= sizeof(STORAGE_DIAGNOSTIC_DATA)
.
Mémoire tampon d’entrée/sortie
n/a
Longueur de la mémoire tampon d’entrée/sortie
n/a
Bloc d’état
Irp->IoStatus.Status est défini sur STATUS_SUCCESS si la demande réussit. Sinon, Status est défini sur la condition d’erreur appropriée en tant que code NTSTATUS. Pour plus d’informations, consultez Valeurs NTSTATUS.
Configuration requise
Condition requise | Valeur |
---|---|
En-tête | ntddstor.h |