共用方式為


開啟與停用插斷 (UMDF 1)

警告

UMDF 2 是最新版的 UMDF,並取代 UMDF 1。 所有新的UMDF驅動程式都應該使用UMDF 2撰寫。 未將新功能新增至 UMDF 1,而且較新版本的 Windows 10 上對 UMDF 1 的支援有限。 通用 Windows 驅動程式必須使用 UMDF 2。

封存的 UMDF 1 範例可在 Windows 11 版本 22H2 - 2022 年 5 月驅動程式範例更新中找到

如需詳細資訊,請參閱 開始使用UMDF

如果您的驅動程式處理裝置中斷,它必須提供 OnInterruptEnableOnInterruptDisable 回呼函式,以啟用和停用中斷。 這些回呼函式必須執行任何必要動作,才能啟用和停用裝置的中斷機制。

如果您的驅動程式必須執行與啟用或停用中斷相關的其他作業,那麼驅動程式也可以提供 IPnpCallbackHardwareInterrupt::OnD0EntryPostInterruptsEnabled 和 IPnpCallbackHardwareInterrupt::OnD0ExitPreInterruptsDisabled 回呼函式。

架構會在呼叫驅動程式的 OnD0Entry 回呼函式之後,每次裝置進入其工作(D0)狀態時,呼叫驅動程式的 OnInterruptEnableIPnpCallbackHardwareInterrupt::OnD0EntryPostInterruptsEnabled 回呼函式。 當裝置離開其工作狀態之前,架構會呼叫驅動程式的 IPnpCallbackHardwareInterrupt::OnD0ExitPreInterruptsDisabledOnInterruptDisable 回呼函式,然後才呼叫驅動程式的 OnD0Exit 回呼函式。 如需架構何時呼叫驅動程式回呼函式的詳細資訊,請參閱 以UMDF為基礎的驅動程式中的 PnP 和電源管理

您不得假設每次架構呼叫驅動程式的 OnInterruptEnable 回呼函式時,裝置都會使用相同的中斷資源。 有時候,PnP 管理程式會重新分配系統資源,並且可能會將新的中斷資源指派給您的裝置。

驅動程式可以呼叫 IWDFInterrupt::GetInfo 來判斷裝置的中斷資源。 驅動程式可以呼叫 IWDFInterrupt::GetDevice 來判斷中斷物件所屬的裝置。

若要直接啟用和停用中斷,驅動程式可以呼叫中斷物件的 IWDFInterrupt::EnableIWDFInterrupt::D isable 方法,其會呼叫驅動程式的 OnInterruptEnableOnInterruptDisable 事件回呼函式。 不過,大部分驅動程式應該只允許架構在適當的時間呼叫 OnInterruptEnableOnInterruptDisable 回呼函式。