WdfIoTargetWdmGetTargetPhysicalDevice-Funktion (wdfiotarget.h)

[Gilt nur für KMDF]

Die WdfIoTargetWdmGetTargetPhysicalDevice-Methode gibt einen Zeiger auf das Windows Driver Model (WDM)-Objekt (PDO) zurück, das das Gerät eines Remote-E/A-Ziels darstellt.

Syntax

PDEVICE_OBJECT WdfIoTargetWdmGetTargetPhysicalDevice(
  [in] WDFIOTARGET IoTarget
);

Parameter

[in] IoTarget

Ein Handle für ein Remote-E/A-Zielobjekt. Dieses Handle wurde aus einem vorherigen Aufruf von WdfIoTargetCreate abgerufen.

Rückgabewert

Wenn das E/A-Ziel ein PnP-Gerät darstellt, gibt WdfIoTargetWdmGetTargetPhysicalDevice einen Zeiger auf eine DEVICE_OBJECT-Struktur zurück, die die PDO eines Remote-E/A-Ziels darstellt. Andernfalls gibt die Methode NULL zurück.

Eine Fehlerüberprüfung tritt auf, wenn der Treiber ein ungültiges Objekthandle bereitstellt.

Hinweise

Der Zeiger, den die WdfIoTargetWdmGetTargetPhysicalDevice-Methode zurückgibt, ist gültig, bis der Treiber WdfIoTargetClose oder WdfIoTargetCloseForQueryRemove aufruft oder bis das Remote-E/A-Zielobjekt gelöscht wird. Wenn der Treiber eine EvtCleanupCallback-Funktion für das Remote-E/A-Zielobjekt bereitstellt und das Objekt gelöscht wird, bevor das E/A-Remoteziel geschlossen wird, ist der Zeiger gültig, bis die EvtCleanupCallback-Funktion zurückgegeben wird.

Wenn der Treiber versucht, auf das WDM-Geräteobjekt zuzugreifen, nachdem es entfernt wurde, kann der Treiber dazu führen, dass das System abstürzt. Das Toastmonbeispiel veranschaulicht, wie der Treiber eine EvtIoTargetQueryRemove-Rückruffunktion bereitstellen kann, sodass sie benachrichtigt wird, wenn das E/A-Ziel entfernt wird.

Weitere Informationen zu WdfIoTargetWdmGetTargetPhysicalDevice finden Sie unter Abrufen von Informationen zu einem allgemeinen E/A-Ziel.

Weitere Informationen zu E/A-Zielen finden Sie unter Verwenden von E/A-Zielen.

Beispiele

Im folgenden Codebeispiel wird ein Zeiger auf eine DEVICE_OBJECT-Struktur abgerufen, die den PDO-Wert des Geräts eines Remote-E/A-Ziels darstellt.

PDEVICE_OBJECT  pTargetDO;

pTargetDO = WdfIoTargetWdmGetTargetPhysicalDevice(IoTarget);

Anforderungen

Anforderung Wert
Zielplattform Universell
KMDF-Mindestversion 1.0
Kopfzeile wdfiotarget.h (include Wdf.h)
Bibliothek Wdf01000.sys (siehe Versionsverwaltung der Frameworkbibliothek).)
IRQL <=DISPATCH_LEVEL
DDI-Complianceregeln DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf)

Weitere Informationen

DEVICE_OBJECT

WdfIoTargetCreate