exDeleteTimer 函式 (wdm.h)
ExDeleteTimer 例程會刪除先前由 ExAllocateTimer 例程配置的定時器物件。
語法
BOOLEAN ExDeleteTimer(
[in] PEX_TIMER Timer,
[in] BOOLEAN Cancel,
[in] BOOLEAN Wait,
[in] PEXT_DELETE_PARAMETERS Parameters
);
參數
[in] Timer
EX_TIMER 結構的指標。 這個結構是 先前由 ExAllocateTimer 例程配置的定時器物件。
[in] Cancel
如果目前設定定時器,是否要取消定時器。 如果為 TRUE,則例程會在設定定時器時取消定時器。 如果為 FALSE,則例程不會在設定時取消定時器。 如果呼叫端將 Wait 設定為 TRUE, 則 Cancel 也必須為 TRUE;否則,就會發生錯誤檢查。
[in] Wait
如果定時器已經啟動到期的程式,是否要等候定時器完成到期。 如果為 TRUE,則例程會等候定時器到期。 如果 為 FALSE,則例程不會等候。 如需詳細資訊,請參閱<備註>。
[in] Parameters
EXT_DELETE_PARAMETERS 結構的指標。 呼叫驅動程式先前稱為 ExInitializeDeleteTimerParameters 例程,以初始化這個結構。
傳回值
如果 Cancel 為 TRUE 且定時器已取消,則此例程會傳回 TRUE。 否則,例程會傳回 FALSE。 如需詳細資訊,請參閱<備註>。
備註
驅動程式呼叫此例程之後,Timer 所指向的定時 器 物件可能不再有效。 不過,如果驅動程式實作此例程,則傳遞至 ExTimerCallback 回呼例程的 Timer 參數值一律是定時器物件的有效指標。
如果 Cancel 為 TRUE, 則 FALSE 的傳回值表示從未設定定時器,或定時器已設定,但在取消之前已過期。 如果 Cancel 為 FALSE,則例程一律會傳回 FALSE。
如果 Wait 為 TRUE,此例程可能會封鎖。 如果從驅動程式的 ExTimerCallback 例程呼叫 ExDeleteTimer,這會在DISPATCH_LEVEL呼叫,則此呼叫中的 Wait 參數必須是 FALSE。
如果 Wait 為 TRUE,則必須在 IRQL <= APC_LEVEL呼叫例程。 如果 Wait 為 FALSE,則可以在 IRQL <= DISPATCH_LEVEL呼叫例程。
如需詳細資訊,請參閱 刪除 System-Allocated 定時器物件。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | 從 Windows 8.1 開始提供。 |
目標平台 | Universal |
標頭 | wdm.h (包括 Wdm.h、Ntddk.h、Ntifs.h) |
程式庫 | Ntoskrnl.lib |
IRQL | 請參閱<備註>。 |