FltGetFileContext 函式 (fltkernel.h)

FltGetFileContext 例程會擷取由指定迷你篩選驅動程序實例為檔案設定的內容。

語法

NTSTATUS FLTAPI FltGetFileContext(
  [in]  PFLT_INSTANCE Instance,
  [in]  PFILE_OBJECT  FileObject,
  [out] PFLT_CONTEXT  *Context
);

參數

[in] Instance

呼叫端的不透明實例指標。 這是必要參數,而且無法 NULL。

[in] FileObject

檔案的檔案對象指標。 這是必要參數,而且無法 NULL。

[out] Context

接收內容位址的呼叫端配置變數指標。 這是必要參數,而且無法設定為 NULL。

傳回值

FltGetFileContext 成功傳回要求的檔案內容時,會傳回STATUS_SUCCESS。 否則,它會傳回適當的NTSTATUS值,例如下列其中一個:

傳回碼 描述
STATUS_NOT_FOUND 目前在此檔案上找不到相符的內容,因此 FltMgr 將 Context 設為 NULL_CONTEXT。 這是錯誤碼。
STATUS_NOT_SUPPORTED 此檔案不支援檔案內容。 這是錯誤碼。

言論

如需內容的詳細資訊,請參閱 關於小型篩選內容。

小型篩選驅動程式會呼叫 FltGetFileContext,以擷取它為指定檔案設定的檔案內容。

FltGetFileContext 遞增 Context 參數指向的內容參考計數。 當不再需要此內容指標時,呼叫端必須藉由呼叫 FltReleaseContext來遞減其參考計數。 因此,FltGetFileContext 的每個成功呼叫,都必須比對 FltReleaseContext的後續呼叫。

若要設定檔案內容,請呼叫 FltSetFileContext。

若要設定新的內容,請呼叫 FltAllocateContext。

若要刪除檔案內容,請呼叫 FltDeleteFileContext 或 FltDeleteContext。

若要判斷指定檔案是否支援檔案內容,請呼叫 FltSupportsFileContexts 或 FltSupportsFileContextsEx。

要求

要求 價值
最低支援的用戶端 Windows Vista
目標平臺 普遍
標頭 fltkernel.h (包括 Fltkernel.h)
連結庫 FltMgr.lib
DLL Fltmgr.sys
IRQL <= APC_LEVEL

另請參閱

FLT_CONTEXT_REGISTRATION

FltAllocateContext

FltDeleteContext

FltDeleteFileContext

FltReleaseContext

FltSetFileContext

FltSupportsFileContexts

FltSupportsFileContextsEx