次の方法で共有


ミニフィルター ドライバーの登録

すべてのミニフィルター ドライバーは、登録されているミニフィルター ドライバーのグローバル リストに自分自身を追加し、コールバック ルーチンとドライバーに関するその他の情報の一覧をフィルター マネージャーに提供するために、その DriverEntry ルーチンから FltRegisterFilter を呼び出す必要があります。

MiniSpy サンプルでは、次のコード例に示すようにミニフィルター ドライバーが登録されています。

NTSTATUS status;
status = FltRegisterFilter(
           DriverObject,                  //Driver
           &FilterRegistration,           //Registration
           &MiniSpyData.FilterHandle);    //RetFilter

FltRegisterFilter には、2 つの入力パラメーターがあります。 1 つ目の「ドライバー」は、ミニフィルター ドライバーが DriverEntry ルーチンへの DriverObject 入力パラメーターとして受け取ったドライバー オブジェクト ポインターです。 2 つ目 の「登録」は、ミニフィルター ドライバーのコールバック ルーチンへの エントリ ポイントを含む FLT_REGISTRATION 構造体へのポインターです。

さらに、 FltRegisterFilter には、 ミニフィルター ドライバーの不透明なフィルター ポインターを受け取る出力パラメーター RetFilter があります。 このフィルター ポインターは、FltStartFilteringFltUnregisterFilter など、多くの FltXxx サポート ルーチンに必要な入力パラメーターです。