次の方法で共有


FsRtlRegisterFileSystemFilterCallbacks 関数 (ntifs.h)

ファイル システム フィルター ドライバーとファイル システムは、FsRtlRegisterFileSystemFilterCallbacks ルーチンを呼び出して、基になるファイル システムが特定の操作を実行したときに呼び出される通知コールバック ルーチンを登録します。

構文

NTSTATUS FsRtlRegisterFileSystemFilterCallbacks(
  [in] _DRIVER_OBJECT       *FilterDriverObject,
  [in] PFS_FILTER_CALLBACKS Callbacks
);

パラメーター

[in] FilterDriverObject

フィルターまたはファイル システム ドライバーのドライバー オブジェクトへのポインター。

[in] Callbacks

呼び出し元が指定した通知コールバック ルーチンのエントリ ポイントを含む FS_FILTER_CALLBACKS 構造体へのポインター。 すべてのコールバック エントリ ポイントは省略可能であり、NULL 設定できます。

戻り値

FsRtlRegisterFileSystemFilterCallbacks ルーチンは、次のいずれかの状態値を返すことができます。

リターン コード 形容
STATUS_SUCCESS コールバック ルーチンが正常に登録されました。
STATUS_INSUFFICIENT_RESOURCES FsRtlRegisterFileSystemFilterCallbacks コールバック情報を格納するためにメモリを割り当てるときにプールの割り当てエラーが発生しました。
STATUS_FSFILTER_OP_COMPLETED_SUCCESSFULLY FsRtlRegisterFileSystemFilterCallbacks FsFilter 操作が正常に完了
STATUS_FILE_LOCKED_WITH_ONLY_READERS ファイルはロックされており、ファイルのすべてのユーザーは読み取り専用です。
STATUS_FILE_LOCKED_WITH_WRITERS ファイルがロックされ、ファイルの少なくとも 1 人のユーザーが書き込むことができます
STATUS_INVALID_PARAMETER いずれかのパラメーターが無効です。

備考

ファイル システムおよびファイル システム フィルター ドライバーは、ドライバーの DriverEntry ルーチンから FsRtlRegisterFileSystemFilterCallbacks を呼び出す必要があります。

FsRtlRegisterFileSystemFilterCallbacks は、特定のファイル操作の要求が基になるファイル システムに送信されるときに呼び出される コールバック パラメーターで指定された通知コールバック ルーチンを登録します。

ファイル システム FsRtlRegisterFileSystemFilterCallbacks を呼び出して、FS_FILTER_CALLBACKS 構造体の PreAcquireForSectionSynchronization コールバック メンバーを、AcquireFileForNtCreateSectionを使用する代わりに設定します。

FsRtlRegisterFileSystemFilterCallbacks によって登録されたコールバック ルーチンは、次の高速 I/O コールバック ルーチンよりも優先。これは廃止されており、ファイル システム フィルター ドライバーでは使用しないでください。

  • AcquireForCcFlush
  • AcquireFileForNtCreateSection
  • AcquireForModWrite
  • ReleaseForCcFlush
  • ReleaseFileForNtCreateSection する
  • ReleaseForModWrite

必要条件

要件 価値
サポートされる最小クライアント Windows XP
ターゲット プラットフォーム 万国
ヘッダー ntifs.h (Ntifs.h を含む)
ライブラリ NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL

関連項目

FS_FILTER_CALLBACKS