Funzione WdfIoTargetWdmGetTargetPhysicalDevice (wdfiotarget.h)

[Si applica solo a KMDF]

Il metodo WdfIoTargetWdmGetTargetPhysicalDevice restituisce un puntatore all'oggetto dispositivo fisico Windows Driver Model (WDM) che rappresenta un dispositivo di destinazione I/O remoto.

Sintassi

PDEVICE_OBJECT WdfIoTargetWdmGetTargetPhysicalDevice(
  [in] WDFIOTARGET IoTarget
);

Parametri

[in] IoTarget

Handle a un oggetto di destinazione di I/O remoto. Questo handle è stato ottenuto da una chiamata precedente a WdfIoTargetCreate.

Valore restituito

Se la destinazione I/O rappresenta un dispositivo PnP, WdfIoTargetWdmGetPhysicalDevice restituisce un puntatore a una struttura di DEVICE_OBJECT che rappresenta un oggetto PDO di I/O remoto. In caso contrario, il metodo restituisce NULL.

Un controllo di bug si verifica se il driver fornisce un handle di oggetti non valido.

Commenti

Il puntatore restituito dal metodo WdfIoTargetWdmGetPhysicalDevice è valido fino a quando il driver chiama WdfIoTargetClose o WdfIoTargetCloseForQueryRemove o fino all'eliminazione dell'oggetto di destinazione I/O remoto. Se il driver fornisce una funzione EvtCleanupCallback per l'oggetto di destinazione di I/O remoto e se l'oggetto viene eliminato prima della chiusura della destinazione di I/O remota, il puntatore è valido fino a quando non viene restituita la funzione EvtCleanupCallback .

Se il driver tenta di accedere all'oggetto dispositivo WDM dopo che è stato rimosso, il driver può causare l'arresto anomalo del sistema. L'esempio di avviso popup illustra come il driver può fornire una funzione di callback EvtIoTargetQueryRemove in modo che venga notificata se la destinazione di I/O viene rimossa.

Per altre informazioni su WdfIoTargetWdmGetGetPhysicalDevice, vedere Ottenere informazioni su una destinazione di I/O generale.

Per altre informazioni sulle destinazioni di I/O, vedere Uso delle destinazioni di I/O.

Esempio

Nell'esempio di codice seguente viene ottenuto un puntatore a una struttura di DEVICE_OBJECT che rappresenta l'oggetto PDO di un dispositivo di I/O remoto.

PDEVICE_OBJECT  pTargetDO;

pTargetDO = WdfIoTargetWdmGetTargetPhysicalDevice(IoTarget);

Requisiti

Requisito Valore
Piattaforma di destinazione Universale
Versione KMDF minima 1.0
Intestazione wdfiotarget.h (include Wdf.h)
Libreria Wdf01000.sys (vedere Framework Library Versioning).
IRQL <=DISPATCH_LEVEL
Regole di conformità DDI DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf)

Vedi anche

DEVICE_OBJECT

WdfIoTargetCreate