共用方式為


FsRtlRegisterFileSystemFilterCallbacks 函式 (ntifs.h)

文件系統篩選驅動程式和文件系統會呼叫 FsRtlRegisterFileSystemFilterCallbacks 例程,以註冊基礎文件系統執行特定作業時要叫用的通知回呼例程。

語法

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

參數

[in] FilterDriverObject

篩選或檔案系統驅動程式之驅動程式物件的指標。

[in] Callbacks

包含呼叫端所提供通知回呼例程進入點 之FS_FILTER_CALLBACKS 結構的指標。 所有回呼進入點都是選擇性的,而且可以設定為 NULL

傳回值

FsRtlRegisterFileSystemFilterCallbacks 例程可以傳回下列其中一個狀態值:

傳回碼 Description
STATUS_SUCCESS 已成功註冊回呼例程。
STATUS_INSUFFICIENT_RESOURCES FsRtlRegisterFileSystemFilterCallbacks 在配置記憶體以儲存回呼資訊時遇到集區配置失敗。
STATUS_FSFILTER_OP_COMPLETED_SUCCESSFULLY FsRtlRegisterFileSystemFilterCallbacks 已成功完成 FsFilter 作業。
STATUS_FILE_LOCKED_WITH_ONLY_READERS 檔案已鎖定,且檔案的所有使用者只能讀取。
STATUS_FILE_LOCKED_WITH_WRITERS 檔案已鎖定,且檔案至少有一位使用者可以寫入
STATUS_INVALID_PARAMETER 其中一個參數無效。

備註

文件系統和文件系統篩選驅動程式應該從驅動程式的 DriverEntry 例程呼叫 FsRtlRegisterFileSystemFilterCallbacks

FsRtlRegisterFileSystemFilterCallbacks 會註冊在回 呼參數中指定的 通知回呼例程,這些例程會在傳送特定檔案作業的要求傳送至基礎文件系統時叫用。

文件系統會呼叫 FsRtlRegisterFileSystemFilterCallbacks 來設定 FS_FILTER_CALLBACKS 結構的 PreAcquireForSectionSynchronization 回呼成員,而不是使用過時的 AcquireFileForNtCreateSection

FsRtlRegisterFileSystemFilterCallbacks 所註冊的回呼例程會取代下列快速 I/O 回呼例程,這些例程已經過時,而且文件系統篩選驅動程式不應使用:

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

規格需求

需求
最低支援的用戶端 Windows XP
目標平台 Universal
標頭 ntifs.h (包含 Ntifs.h)
程式庫 NtosKrnl.lib
Dll NtosKrnl.exe
IRQL PASSIVE_LEVEL

另請參閱

FS_FILTER_CALLBACKS