Fonction IoInitializeIrp (wdm.h)
La routine IoInitializeIrp initialise un IRP donné qui a été alloué par l’appelant.
Syntaxe
void IoInitializeIrp(
[in, out] PIRP Irp,
[in] USHORT PacketSize,
[in] CCHAR StackSize
);
Paramètres
[in, out] Irp
Pointeur vers l’IRP à initialiser.
[in] PacketSize
Spécifie la taille en octets de l’IRP.
[in] StackSize
Spécifie le nombre d’emplacements de pile dans l’IRP.
Valeur de retour
None
Remarques
Les pilotes utilisent IoInitializeIrp pour initialiser les IRP que le pilote a alloués en mémoire brute. N’utilisez pas IoInitializeIrp pour initialiser un IRP alloué par IoAllocateIrp. IoAllocateIrp initialise automatiquement les membres de l’IRP.
Les pilotes peuvent utiliser IoInitializeIrp pour réinitialiser un IRP en vue d’une réutilisation uniquement dans certaines circonstances. Pour plus d’informations, consultez Réutilisation des IRPs .
Si le pilote associe une MDL au IRP qu’il a alloué, il est responsable de la libération du MDL une fois l’IRP terminée.
Un pilote intermédiaire ou de niveau supérieur peut également appeler IoBuildDeviceIoControlRequest, IoBuildAsynchronousFsdRequest ou IoBuildSynchronousFsdRequest pour configurer les requêtes qu’il envoie aux pilotes de niveau inférieur. Seul un pilote de niveau supérieur peut appeler IoMakeAssociatedIrp.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Disponible à partir de Windows 2000. |
Plateforme cible | Universal |
En-tête | wdm.h (inclure Wdm.h, Ntddk.h, Ntifs.h) |
Bibliothèque | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <= DISPATCH_LEVEL |
Règles de conformité DDI | HwStorPortProhibitedDDIs(storport),IoReuseIrp(wdm) |