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 場合、タイマーが設定されている場合、ルーチンはタイマーを取り消しません。 呼び出し元 待機 を TRUE に設定する場合は、キャンセル も TRUE する必要があります。それ以外の場合は、バグ チェックが発生します。
[in] Wait
タイマーが既に期限切れのプロセスを開始している場合に、タイマーの有効期限が切れるのを待つかどうか。 TRUE 場合、ルーチンはタイマーの有効期限が切れるのを待機します。 FALSE 場合、ルーチンは待機しません。 詳細については、「解説」を参照してください。
[in] Parameters
EXT_DELETE_PARAMETERS 構造体へのポインター。 呼び出し元のドライバーは、以前にこの構造体を初期化する ExInitializeDeleteTimerParameters ルーチンを呼び出しました。
戻り値
このルーチンは、Cancel が TRUE され、タイマーが取り消された場合に、TRUE を返します。 それ以外の場合、ルーチンは FALSE 返します。 詳細については、「解説」を参照してください。
備考
ドライバーがこのルーチンを呼び出した後、Timer が指すタイマー オブジェクトが無効になる可能性があります。 ただし、TimerExTimerCallback コールバック ルーチンに渡されるパラメーター値は、ドライバーがこのルーチンを実装する場合、常にタイマー オブジェクトへの有効なポインターです。
Cancel が TRUE 場合、FALSE の戻り値は、タイマーが設定されなかったこと、またはタイマーが設定されたが、取り消される前に期限切れであることを示します。 取り消し が FALSE 場合、ルーチンは常に FALSE 返します。
このルーチンは、待機 が TRUE 場合にブロックできます。 ExDeleteTimer がドライバーの ExTimerCallback ルーチンから呼び出された場合、この呼び出し DISPATCH_LEVELで呼び出される Wait パラメーターは FALSE する必要があります。
待機 が TRUE 場合は、IRQL <= APC_LEVEL でルーチンを呼び出す必要があります。 Wait が FALSE 場合、IRQL <= DISPATCH_LEVEL でルーチンを呼び出すことができます。
詳細については、「System-Allocated Timer オブジェクトの削除」を参照してください。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows 8.1 以降で使用できます。 |
ターゲット プラットフォーム の | 万国 |
ヘッダー | wdm.h (Wdm.h、Ntddk.h、Ntifs.h を含む) |
ライブラリ | Ntoskrnl.lib |
IRQL | 「解説」を参照してください。 |
関連項目
ExAllocateTimer の
ExInitializeDeleteTimerParameters を する
ExTimerCallback を する
ExTimerDeleteCallback の