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

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

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

  • AcquireForCcFlush
  • AcquireFileForNtCreateSection
  • AcquireForModWrite
  • ReleaseForCcFlush
  • ReleaseFileForNtCreateSection
  • ReleaseForModWrite

要件

要件
サポートされている最小のクライアント Windows XP
対象プラットフォーム ユニバーサル
Header ntifs.h (Ntifs.h を含む)
Library NtosKrnl.lib
[DLL] NtosKrnl.exe
IRQL PASSIVE_LEVEL

こちらもご覧ください

FS_FILTER_CALLBACKS