共用方式為


FltDeleteStreamContext 函式 (fltkernel.h)

FltDeleteStreamContext 會移除指定迷你篩選驅動程序實例為指定數據流設定的內容,並將內容標示為刪除。

語法

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

參數

[in] Instance

迷你篩選驅動程序實例的不透明實例指標,其內容要從附加至檔案數據流的內容清單中移除。

[in] FileObject

檔案數據流之檔案物件的指標。

[out] OldContext

接收已刪除內容位址之呼叫端配置的變數指標。 這個參數是選擇性的,而且可以 NULL。 如果 OldContextNULL,且未指向NULL_CONTEXT,則呼叫者會負責呼叫 FltReleaseContext,以在不再需要時釋放此內容。

傳回值

FltDeleteStreamContext 會傳回STATUS_SUCCESS或適當的 NTSTATUS 值,例如下列其中一項:

傳回碼 描述
STATUS_FLT_DELETING_OBJECT 指定的實例 正在被拆毀。 這是錯誤碼。
STATUS_NOT_FOUND 找不到相符的內容。 這是錯誤碼。
STATUS_NOT_SUPPORTED 檔案系統不支援此檔案數據流的每個數據流內容。 這是錯誤碼。

言論

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

因為內容是參考計數,所以小型篩選驅動程式通常不需要呼叫例程,例如 FltDeleteStreamContext 明確刪除內容。

小型篩選驅動程式會呼叫 FltDeleteStreamContext,以從檔案數據流中移除內容,並將內容標示為要刪除。 除非其上有未完成的參考,否則通常會立即釋放內容(例如,因為內容仍由另一個線程使用中)。

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

若要取得數據流內容,請呼叫 FltGetStreamContext

若要設定資料串流內容,請呼叫 FltSetStreamContext

要求

要求 價值
目標平臺 普遍
標頭 fltkernel.h (包括 Fltkernel.h)
連結庫 FltMgr.lib
IRQL <= APC_LEVEL

另請參閱

FltAllocateContext

FltDeleteContext

FltGetStreamContext

FltReleaseContext

FltSetStreamContext