次の方法で共有


IoSetCompletionRoutineExCheckルール (wdm)

IoSetCompletionRoutineExCheck ルールは、 IoSetCompletionRoutineEx ルーチンが NTSTATUS 値を返すよう指定します。 ドライバーは、IoCallDriver または PoCallDriver を呼び出す前に、 IoCompletion ルーチンが正常に登録されたかどうかを判断するには、この値をチェックする必要があります。

IoCompletion ルーチンが正常に登録されると、 IoSetCompletionRoutineEx は、 IoCompletion ルーチンが実行されるまでメイン割り当てられたメモリを割り当てます。 ドライバーは、IoCallDriver または PoCallDriver を呼び出して IoCompletion ルーチンが実行されるようにする必要があります。それ以外の場合、カーネルはメモリをリークします。

ドライバーモデル: WDM

テスト方法

コンパイル時

静的ドライバー検証ツール を実行し、 IoSetCompletionRoutineExCheck 規則を指定します。

コードの分析を実行するには、次の手順に従います。
  1. コードを準備します (ロール型宣言を使用します)。
  2. 静的ドライバー検証ツールを実行します。
  3. 結果を表示および分析します。

詳細については、 「静的ドライバー検証ツールを使用してドライバー の欠陥を見つける」を参照してください。

適用対象

IoCallDriverIoSetCompletionRoutineExPoCallDriver