建立 KMDF 迷你埠驅動程式
如果埠/迷你埠架構允許迷你埠驅動程式使用 WDM 或架構介面與其他驅動程式通訊,某些迷你埠驅動程式可以使用 Kernel-Mode Driver Framework。 例如, 具有 WDM 下邊緣的 NDIS 迷你埠驅動程式 可以使用架構來實作下邊緣。
如果您想要讓迷你埠驅動程式使用架構,驅動程式必須:
在呼叫WdfDriverCreate之前,先在驅動程式WDF_DRIVER_CONFIG結構的DriverInitFlags成員中設定WdfDriverInitNoDispatchOverride旗標。 設定此旗標可讓埠驅動程式而非架構攔截 I/O 要求封包, (I/O 管理員已導向驅動程式) I/O 要求封包。
呼叫 WdfDeviceMiniportCreate 而不是 WdfDeviceCreate ,以建立迷你埠驅動程式裝置的架構裝置物件。 當迷你埠驅動程式通知裝置可用時,迷你埠驅動程式應該呼叫 WdfDeviceMiniportCreate 。
呼叫 WdfObjectDelete 以刪除 WdfDeviceMiniportCreate 建立 的裝置物件,當驅動程式判斷裝置已移除。 (因為驅動程式已設定 WdfDriverInitNoDispatchOverride 旗標,所以架構無法判斷裝置何時移除且無法刪除裝置物件。)
當埠驅動程式通知迷你埠驅動程式即將卸載時,呼叫 WdfDriverMiniportUnload 。
迷你埠驅動程式只有在基礎裝置支援 隨插即用 (PnP) 時,才能使用架構。 迷你埠驅動程式無法使用架構的控制裝置物件。
限制適用于 WdfDeviceMiniportCreate 方法所建立的裝置物件。 如需這些限制的清單,請參閱 WdfDeviceMiniportCreate。