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。 如果 OldContext 不是 NULL 且未指向 NULL_CONTEXT,則呼叫端會負責呼叫 FltReleaseContext ,以在不再需要時釋出此內容。

傳回值

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

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

備註

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

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

迷你篩選驅動程式會呼叫 FltDeleteStreamContext ,從檔案數據流中移除內容,並標記要刪除的內容。 內容通常會立即釋放,除非有未處理的參考 (,因為內容仍由另一個線程) 使用。

若要配置新的內容,請呼叫 FltAllocateContext

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

若要設定數據流內容,請呼叫 FltSetStreamContext

規格需求

需求
目標平台 Universal
標頭 fltkernel.h (包含 Fltkernel.h)
程式庫 FltMgr.lib
IRQL <= APC_LEVEL

另請參閱

FltAllocateContext

FltDeleteContext

FltGetStreamContext

FltReleaseContext

FltSetStreamContext