Partager via


WdfIoTargetWdmGetTargetPhysicalDevice, fonction (wdfiotarget.h)

[S’applique uniquement à KMDF]

La méthode WdfIoTargetWdmGetTargetPhysicalDevice retourne un pointeur vers l’objet PDO (Windows Driver Model) 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 de retour

Si la cible d’E/S représente un appareil PnP, WdfIoTargetWdmGetTargetPhysicalDevice retourne un pointeur vers une structure DEVICE_OBJECT qui représente le PDO d’une cible d’E/S distante. Sinon, la méthode retourne NULL .

Une vérification de bogue se produit si le pilote fournit un handle d’objet non valide.

Remarques

Le pointeur retourné par la méthode WdfIoTargetWdmGetTargetPhysicalDevice 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 retourne.

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 un EvtIoTargetQueryRemove fonction de rappel afin qu’il soit averti si la cible d’E/S est supprimée.

Pour plus d’informations sur WdfIoTargetWdmGetTargetPhysicalDevice, consultez Obtenir des informations sur une cible d’E/S générale.

Pour plus d’informations sur les cibles d’E/S, consultez Utilisation des cibles d’E/S.

Exemples

L’exemple de code suivant obtient un pointeur vers une structure DEVICE_OBJECT qui représente l’opération PDO d’un appareil cible d’E/S distant.

PDEVICE_OBJECT  pTargetDO;

pTargetDO = WdfIoTargetWdmGetTargetPhysicalDevice(IoTarget);

Spécifications

Besoin Valeur
plateforme cible Universel
version minimale de KMDF 1.0
En-tête wdfiotarget.h (include Wdf.h)
Bibliothèque Wdf01000.sys (voir Versioning de la bibliothèque Framework.)
IRQL <=DISPATCH_LEVEL
règles de conformité DDI DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf)

Voir aussi

DEVICE_OBJECT

WdfIoTargetCreate