WdfIoTargetWdmGetTargetPhysicalDevice, fonction (wdfiotarget.h)
[S’applique à KMDF uniquement]
La méthode WdfIoTargetWdmGetTargetPhysicalDevice retourne un pointeur vers l’objet de périphérique physique (PDO) du modèle de pilote Windows (WDM) qui représente l’appareil d’une cible d’E/S distante.
Syntaxe
PDEVICE_OBJECT WdfIoTargetWdmGetTargetPhysicalDevice(
[in] WDFIOTARGET IoTarget
);
Paramètres
[in] IoTarget
Handle vers un objet cible d’E/S distant. Ce handle a été obtenu à partir d’un appel précédent à WdfIoTargetCreate.
Valeur retournée
Si la cible d’E/S représente un appareil PnP, WdfIoTargetWdmGetTargetPhysicalDevice retourne un pointeur vers une structure DEVICE_OBJECT qui représente l’AOP d’une cible d’E/S distante. Sinon, la méthode retourne NULL.
Un bogue case activée se produit si le pilote fournit un handle d’objet non valide.
Remarques
Le pointeur que la méthode WdfIoTargetWdmGetTargetPhysicalDevice retourne est valide jusqu’à ce que le pilote appelle WdfIoTargetClose ou WdfIoTargetCloseForQueryRemove, ou jusqu’à ce que l’objet cible d’E/S distant soit supprimé. Si le pilote fournit une fonction EvtCleanupCallback pour l’objet cible d’E/S distant et si l’objet est supprimé avant la fermeture de la cible d’E/S distante, le pointeur est valide jusqu’à ce que la fonction EvtCleanupCallback soit retournée.
Si le pilote tente d’accéder à l’objet de périphérique WDM une fois qu’il a été supprimé, le pilote peut provoquer le blocage du système. L’exemple toastmon montre comment le pilote peut fournir une fonction de rappel EvtIoTargetQueryRemove afin qu’il soit averti si la cible d’E/S est supprimée.
Pour plus d’informations sur WdfIoTargetWdmGetTargetPhysicalDevice, consultez Obtention d’informations sur une cible d’E/S générale.
Pour plus d’informations sur les cibles d’E/S, consultez Utilisation de cibles d’E/S.
Exemples
L’exemple de code suivant obtient un pointeur vers une structure DEVICE_OBJECT qui représente l’AOP du périphérique d’une cible d’E/S distante.
PDEVICE_OBJECT pTargetDO;
pTargetDO = WdfIoTargetWdmGetTargetPhysicalDevice(IoTarget);
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Universal |
Version KMDF minimale | 1.0 |
En-tête | wdfiotarget.h (inclure Wdf.h) |
Bibliothèque | Wdf01000.sys (consultez Gestion des versions de la bibliothèque d’infrastructure).) |
IRQL | <=DISPATCH_LEVEL |
Règles de conformité DDI | DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf) |