BUS_INTERFACE_REFERENCE - NtDoc

Native API online documentation, based on the System Informer (formerly Process Hacker) phnt headers
// ks.h

typedef struct {
  INTERFACE                  Interface;
  PFNREFERENCEDEVICEOBJECT   ReferenceDeviceObject;
  PFNDEREFERENCEDEVICEOBJECT DereferenceDeviceObject;
  PFNQUERYREFERENCESTRING    QueryReferenceString;
} BUS_INTERFACE_REFERENCE, *PBUS_INTERFACE_REFERENCE;
View the official Windows Driver Kit DDI reference

NtDoc

No description available.

Windows Driver Kit DDI reference (ns-ks-bus_interface_reference)

BUS_INTERFACE_REFERENCE structure

Description

A software device enumerator exports this interface to allow drivers to reference count physical device objects (PDOs) such that the device remains active while in use and is unloaded when not in use.

Members

Interface

Specifies the exported INTERFACE.

ReferenceDeviceObject

Pointer to a driver-supplied KStrReferenceDeviceObject routine.

DereferenceDeviceObject

Pointer to a driver-supplied KStrDereferenceDeviceObject routine.

QueryReferenceString

Pointer to a driver-supplied KStrQueryReferenceString routine.

Remarks

A driver obtains a BUS_INTERFACE_REFERENCE interface by creating and sending an IRP_MJ_PNP request that specifies an IRP_MN_QUERY_INTERFACE minor function code. To do this, the driver should: