WdfDeviceWdmGetDeviceObject function (wdfdevice.h)

[Applies to KMDF only]

The WdfDeviceWdmGetDeviceObject method returns the Windows Driver Model (WDM) device object that is associated with a specified framework device object.

Syntax

PDEVICE_OBJECT WdfDeviceWdmGetDeviceObject(
  WDFDEVICE Device
);

Parameters

Device

A handle to a framework device object.

Return value

WdfDeviceWdmGetDeviceObject returns a pointer to a DEVICE_OBJECT structure.

A bug check occurs if the driver supplies an invalid object handle.

Remarks

The pointer that the WdfDeviceWdmGetDeviceObject method returns is valid until the framework device object is deleted. If the driver provides an EvtCleanupCallback function for the framework device object, the pointer is valid until the callback function returns.

Examples

The following code example creates a tracing message that contains pointers to the WDM device objects that represent a device's PDO and FDO.

TraceEvents(
            TRACE_LEVEL_INFORMATION,
            AMCC_TRACE_INIT,
            "PDO 0x%p, FDO 0x%p",
            WdfDeviceWdmGetPhysicalDevice(device),
            WdfDeviceWdmGetDeviceObject(device)
            );

Requirements

Requirement Value
Target Platform Universal
Minimum KMDF version 1.0
Header wdfdevice.h (include Wdf.h)
Library Wdf01000.sys (see Framework Library Versioning.)
IRQL <=DISPATCH_LEVEL
DDI compliance rules DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf)

See also

WdfDeviceWdmGetPhysicalDevice