Функция 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, подпрограмма не отменяет таймер, если он установлен. Если вызывающий объект задает значение waitTRUE, Отмена также должна быть TRUE; в противном случае происходит проверка ошибок.
[in] Wait
Следует ли ожидать окончания срока действия таймера, если таймер уже начал процесс истечения срока действия. Если TRUE, подпрограмма ожидает истечения срока действия таймера. Если FALSE, подпрограмма не ожидает. Дополнительные сведения см. в разделе "Примечания".
[in] Parameters
Указатель на структуру EXT_DELETE_PARAMETERS. Вызывающий драйвер ранее назвал подпрограмму ExInitializeDeleteTimerParameters для инициализации этой структуры.
Возвращаемое значение
Эта подпрограмма возвращает TRUE, если отмена TRUE и таймер был отменен. В противном случае подпрограмма возвращает FALSE. Дополнительные сведения см. в разделе "Примечания".
Замечания
После вызова этой подпрограммы драйвером объект таймера, на который указывает Таймер, может больше не быть допустимым. Однако значение параметра таймера передается в подпрограмму обратного вызова ExTimerCallback, если драйвер реализует эту подпрограмму, всегда является допустимым указателем на объект таймера.
Если отменаTRUE, возвращаемое значение FALSE указывает, что таймер никогда не был задан или таймер был задан, но истек срок действия до его отмены. Если ОтменаFALSE, подпрограмма всегда возвращает FALSE.
Эта подпрограмма может блокироваться, если ожиданиеtrue. Если exDeleteTimer вызывается из подпрограммы exTimerCallback драйвера, который вызывается в DISPATCH_LEVEL, параметр ожидания в этом вызове должен быть FALSE.
Если ожиданиеTRUE, подпрограмма должна вызываться в IRQL <= APC_LEVEL. Если ожиданиеfalse, подпрограмма может вызываться в IRQL <= DISPATCH_LEVEL.
Дополнительные сведения см. в разделе Удалениеобъекта таймера System-Allocated.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Доступно начиная с Windows 8.1. |
целевая платформа | Всеобщий |
заголовка | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
библиотеки | Ntoskrnl.lib |
IRQL | См. примечания. |