WUDF_INTERRUPT_ENABLE回呼函式 (wudfinterrupt.h)
警告
UMDF 2 是最新版的 UMDF,並取代 UMDF 1。 所有新的UMDF驅動程式都應該使用UMDF 2撰寫。 未將新功能新增至 UMDF 1,且較新版本的 #D62C085CFBF9A48248F6898E59B1C95EB 上,UMDF 1 的支援有限。 通用 Windows 驅動程式必須使用 UMDF 2。 如需詳細資訊,請參閱使用UMDF使用者入門。
驅動程式的 OnInterruptEnable 事件回呼函式會啟用指定的硬體中斷。
語法
WUDF_INTERRUPT_ENABLE WudfInterruptEnable;
HRESULT WudfInterruptEnable(
[in] IWDFInterrupt *Interrupt,
[in] IWDFDevice *AssociatedDevice
)
{...}
參數
[in] Interrupt
IWDFInterrupt 介面的指標。
[in] AssociatedDevice
驅動程式用來呼叫 CreateInterrupt 的 IWDFDevice 介面指標。
傳回值
如果作業成功,回呼函式必須傳回S_OK。 否則,回呼應該會傳回 Winerror.h 中定義的其中一個錯誤碼。
備註
若要註冊 OnInterruptEnable 回呼函式,您的驅動程式必須在呼叫 IWDFDevice::CreateInterrupt 之前,將回呼函式的位址放在WUDF_INTERRUPT_CONFIG結構中。
每當裝置進入其運作 (D0) 狀態時,架構都會呼叫驅動程式的 OnInterruptEnable 回呼函式。 此外,驅動程式可藉由呼叫 IWDFInterrupt::Enable,讓架構呼叫 OnInterruptEnable 回呼函式。
在呼叫 OnInterruptEnable 回呼函式之前,架構會取得使用者模式中斷鎖定。
呼叫 OnInterruptEnable 回呼函式之後,架構會呼叫驅動程式的 OnD0EntryPostInterruptsEnabled 事件回呼函式。
如需在 UMDF 驅動程式中處理中斷的詳細資訊,請參閱 存取硬體和處理中斷。
範例
函式類型會在 Wudfinterrupt.h 中宣告,如下所示。
typedef
__drv_functionClass(WUDF_INTERRUPT_ENABLE)
HRESULT
WUDF_INTERRUPT_ENABLE(
_In_
IWDFInterrupt* Interrupt,
_In_
IWDFDevice* AssociatedDevice
);
typedef WUDF_INTERRUPT_ENABLE *PFN_WUDF_INTERRUPT_ENABLE;
若要定義名為 MyInterruptEnable 的 OnInterruptEnable 回呼函式,您必須先提供 SDV 和其他驗證工具所需的函式宣告,如下所示:
WUDF_INTERRUPT_ENABLE MyInterruptEnable;
然後,實作回呼函式,如下所示:
HRESULT
MyInterruptEnable (
IN IWDFInterrupt* pInterrupt,
IN IWDFDevice* pAssociatedDevice
)
{…}
規格需求
需求 | 值 |
---|---|
終止支援 | 在 UMDF 2.0 和更新版本中無法使用。 |
目標平台 | 桌面 |
最低UMDF版本 | 1.11 |
標頭 | wudfinterrupt.h |