共用方式為


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結構的指標。 結構可用於 as-is 或內嵌在驅動程式定義的每個檔案對象內容信息結構中。 若要初始化 結構,請使用 FsRtlInitPerFileObjectContext 巨集。

傳回值

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

傳回碼 描述
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 函式。 相反地,小型篩選程式可以使用 FltXxxContext 函式,將內容資訊與檔案對象產生關聯。 如需完整清單,請參閱 FSRTL_PER_FILEOBJECT_CONTEXT 主題。
 

要求

要求 價值
最低支援的用戶端 Windows Vista
目標平臺 普遍
標頭 ntifs.h (include Fltkernel.h, Ntifs.h)
連結庫 NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL

另請參閱

FSRTL_PER_FILEOBJECT_CONTEXT

FsRtlInitPerFileObjectContext

FsRtlLookupPerFileObjectContext

FsRtlRemovePerFileObjectContext