WIA 服務透過呼叫 IWiaMiniDrv::drvNotifyPnpEvent 方法,通知 WIA 迷你驅動程式有支援的裝置事件。 在此方法中,minidriver 會實作回應事件所需的裝置特定功能。 WIA 服務只會針對 minidriver 在 IWiaMiniDrv::drvGetCapabilities 方法中指明裝置可以支援的事件,呼叫 IWiaMiniDrv::drvNotifyPnpEvent 方法。
minidriver 會透過 STI 事件機制起始事件,或使用 wiasQueueEvent 將事件通知從此裝置新增至事件佇列。
異步行為:電源管理和 I/O 取消
在大部分情況下,WIA 服務可確保同時只有一個呼叫給驅動程式。 不過,某些方法本質上是異步且可重入的。 其中一個很好的範例是 IWiaMiniDrv::d rvNotifyPnpEvent 方法。
WIA 服務會使用這個方法來通知驅動程式可能需要立即採取行動的事件。 例如,當 WIA 服務收到隨插即用事件,指出裝置已移除時,它會立即通知驅動程式。 其他範例包括來自應用程式的電源管理事件和 I/O 取消要求。
如需 IWiaMiniDrv::d rvNotifyPnpEvent 方法的範例實作,說明應該如何回應各種事件,請參閱 新增插斷事件支援。