共用方式為


BUS_INTERFACE_REFERENCE結構 (ks.h)

軟體裝置列舉值會匯出此介面,以允許驅動程序參考計數實體裝置物件(PDO),讓裝置在使用中時保持作用中,並在不使用時卸除。

語法

typedef struct {
  INTERFACE                  Interface;
  PFNREFERENCEDEVICEOBJECT   ReferenceDeviceObject;
  PFNDEREFERENCEDEVICEOBJECT DereferenceDeviceObject;
  PFNQUERYREFERENCESTRING    QueryReferenceString;
} BUS_INTERFACE_REFERENCE, *PBUS_INTERFACE_REFERENCE;

成員

Interface

指定匯出的 INTERFACE

ReferenceDeviceObject

驅動程式提供的指標 KStrReferenceDeviceObject 例程。

DereferenceDeviceObject

驅動程式提供的指標 KStrDereferenceDeviceObject 例程。

QueryReferenceString

驅動程式提供的指標 KStrQueryReferenceString 例程。

言論

驅動程式會建立並傳送指定 IRP_MN_QUERY_INTERFACE 次要函式程式代碼的IRP_MJ_PNP要求,以取得BUS_INTERFACE_REFERENCE介面。 若要這樣做,驅動程序應該:

  • 從分頁記憶體集區配置和零填入BUS_INTERFACE_REFERENCE結構。
  • 建立查詢介面要求的 IRP,並取得新 IRP 的下一個堆疊位置。
  • 在新堆疊位置中,提供 Parameters.QueryInterface.Interface 成員中新BUS_INTERFACE_REFERENCE結構的指標。
  • 設定完成例程,並將要求傳送至驅動程式堆疊。
  • 如果您的要求成功,系統會填入 參數.QueryInterface.Interface所指向的BUS_INTERFACE_REFERENCE結構。

要求

要求 價值
標頭 ks.h (包括 Ks.h)