IoDetachDevice

VOID
    IoDetachDevice(

        IN OUT PDEVICE_OBJECT  TargetDevice
        );

IoDetachDevice releases an attachment between the caller’s device object and a lower driver’s device object.

Parameters

TargetDevice
Points to the lower driver’s device object. The caller previously called IoAttachDevice or IoAttachDeviceToDeviceStack successfully to get this pointer.

Comments

IoDetachDevice decrements the reference count of the TargetDevice object. If the reference count goes to zero and the lower driver has been marked for an unload operation, the lower driver is unloaded.

Callers of IoDetachDevice must be running at IRQL PASSIVE_LEVEL.

See Also

IoAttachDevice, IoAttachDeviceToDeviceStack