FsRtlInsertPerFileObjectContext 函式 (ntifs.h)

針對「舊版」文件系統篩選驅動程式, FsRtlInsertPerFileObjectContext 函式會將內容資訊與檔案對象產生關聯。

語法

NTSTATUS FsRtlInsertPerFileObjectContext(
  [in] PFILE_OBJECT                  FileObject,
  [in] PFSRTL_PER_FILEOBJECT_CONTEXT Ptr
);

參數

[in] FileObject

要關聯 Ptr 參數所指定內容資訊 () 之檔案物件的指標。

[in] Ptr

要與 FileObject 建立關聯的呼叫端配置和初始化FSRTL_PER_FILEOBJECT_CONTEXT結構的指標。 結構可以依原樣使用,或內嵌在驅動程式定義的個別檔案對象內容信息結構中。 若要初始化 結構,請使用 FsRtlInitPerFileObjectContext 宏。

傳回值

FsRtlInsertPerFileObjectContext 會傳回適當的 NTSTATUS 值,例如下列其中一個:

傳回碼 Description
STATUS_SUCCESS
內容信息結構已成功與檔案對象相關聯。
STATUS_INVALID_PARAMETER
FileObject 參數為 NULL
STATUS_INSUFFICIENT_RESOURCES
系統沒有足夠的資源來完成作業。 例如,無法為 FileObject 設定檔案物件擴展名。

備註

文件系統篩選驅動程式會呼叫 FsRtlInsertPerFileObjectContext ,將自己的個別檔案對象內容結構與檔案對象產生關聯。 內容結構包含篩選驅動程式針對檔案對象維護的內容資訊。 FsRtlInsertPerStreamContext 函式會將 Ptr 內容結構插入 FileObject 的內容清單中。

所有每個檔案物件的內容信息結構都必須或包含初始化FSRTL_PER_FILEOBJECT_CONTEXT結構。 使用 FsRtlInitPerFileObjectContext 宏來初始化FSRTL_PER_FILEOBJECT_CONTEXT結構。

在FSRTL_PER_FILEOBJECT_CONTEXT結構或篩選定義的個別檔案對象內容結構 (包含初始化FSRTL_PER_FILEOBJECT_CONTEXT結構) 與檔案對象相關聯之後,可以藉由呼叫 FsRtlLookupPerFileObjectContext 來擷取它,或藉由呼叫 FsRtlRemovePerFileObjectContext 來擷取它。

注意 文件系統迷你篩選驅動程式不得使用 FsRtlXxxPerFileObjectContext 函式。 相反地,迷你篩選可以使用 FltXxx內容函式,將內容資訊與檔案對象產生關聯。 如需完整清單,請參閱 FSRTL_PER_FILEOBJECT_CONTEXT 主題。
 

規格需求

需求
最低支援的用戶端 Windows Vista
目標平台 Universal
標頭 ntifs.h (包括 Fltkernel.h、Ntifs.h)
程式庫 NtosKrnl.lib
Dll NtosKrnl.exe
IRQL <= APC_LEVEL

另請參閱

FSRTL_PER_FILEOBJECT_CONTEXT

FsRtlInitPerFileObjectContext

FsRtlLookupPerFileObjectContext

FsRtlRemovePerFileObjectContext