IoCancelIrp 関数 (wdm.h)
IoCancelIrp ルーチンは、特定の IRP のキャンセル ビットを設定し、ある場合は IRP のキャンセル ルーチンを呼び出します。
構文
BOOLEAN IoCancelIrp(
[in] PIRP Irp
);
パラメーター
[in] Irp
取り消す IRP へのポインター。
戻り値
IoCancelIrp は、IRP にキャンセル ルーチンがあり、このルーチンが呼び出された場合 TRUE を返します。 それ以外の場合は、FALSE 返します。 どちらの場合も、IRP のキャンセル ビットは TRUE に設定されます。 詳細については、「解説」を参照してください。
備考
IRP にキャンセル ルーチンがある場合は、IoCancelIrp キャンセル ビットを設定し、キャンセル ルーチンを呼び出します。
Irp->CancelRoutine が NULL 場合、IRP はキャンセルできない 、IoCancelIrp IRP のキャンセル ビットを設定し、FALSE 返します。 IRP は、取り消し可能になったときに後で取り消す必要があります。
IRP 呼び出しを所有していないドライバーが IoCancelIrp 場合、結果は予測できません。 取り消しビットが設定されている場合でも、IRP は正常な状態で完了する可能性があります。
中間ドライバーは、そのドライバーが呼び出し 渡された IRP を作成しない限り、IoCancelIrp を任意に呼び出すべきではありません。 それ以外の場合、中間ドライバーは、一部の上位レベルのドライバーが独自の目的で追跡している IRP を取り消す可能性があります。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows 2000 以降で使用できます。 |
ターゲット プラットフォーム の | 万国 |
ヘッダー | wdm.h (Wdm.h、Ntddk.h、Ntifs.h を含む) |
ライブラリ | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <= DISPATCH_LEVEL |
DDI コンプライアンス規則 を する | hwStorPortProhibitedDDDIs(storport) を する |
関連項目
IoSetCancelRoutine の