Partager via


Fonction IoGetDeviceAttachmentBaseRef (ntifs.h)

La routine IoGetDeviceAttachmentBaseRef retourne un pointeur vers l’objet d’appareil de niveau le plus bas dans un système de fichiers ou une pile de pilotes de périphérique.

Syntaxe

PDEVICE_OBJECT IoGetDeviceAttachmentBaseRef(
  [in] PDEVICE_OBJECT DeviceObject
);

Paramètres

[in] DeviceObject

Pointeur vers un objet d’appareil dans la pile.

Valeur retournée

IoGetDeviceAttachmentBaseRef retourne un pointeur vers l’objet d’appareil en bas du système de fichiers ou de la pile de pilotes de périphérique. Si l’objet d’appareil donné n’est pas attaché à une pile de pilotes, IoGetDeviceAttachmentBaseRef retourne le pointeur de l’objet d’appareil dans DeviceObject.

Remarques

Un pilote de filtre de système de fichiers appelle généralement IoGetDeviceAttachmentBaseRef pour obtenir l’objet d’appareil de niveau le plus bas dans une pile de pilotes de système de fichiers. Souvent, cela se fait lorsque le pilote de filtre reçoit une notification indiquant qu’un système de fichiers s’est inscrit ou s’est désinscrit en tant que système de fichiers actif. La routine de rappel de notification du pilote de filtre appelle IoGetDeviceAttachmentBaseRef pour obtenir un pointeur vers l’objet d’appareil de contrôle du système de fichiers, puis appelle ObQueryNameString pour récupérer le nom de cet objet à des fins de débogage.

IoGetDeviceAttachmentBaseRef incrémente le nombre de références sur l’objet d’appareil en bas de la pile. Ainsi, chaque appel réussi à IoGetDeviceAttachmentBaseRef doit être mis en correspondance par un appel suivant à ObDereferenceObject.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Correctif cumulatif windows 2000 SP4 ; Windows XP
Plateforme cible Universal
En-tête ntifs.h (inclure Ntifs.h)
Bibliothèque NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= DISPATCH_LEVEL

Voir aussi

IoEnumerateDeviceObjectList

IoGetLowerDeviceObject

IoRegisterFsRegistrationChange

IoUnregisterFsRegistrationChange

ObDereferenceObject

ObQueryNameString