FltGetBottomInstance 函式 (fltkernel.h)

FltGetBottomInstance 會傳回迷你篩選驅動程序實例的不透明實例指標,如果有的話,該指標會附加在指定磁碟區的實例堆棧底部。

語法

NTSTATUS FLTAPI FltGetBottomInstance(
  [in]  PFLT_VOLUME   Volume,
  [out] PFLT_INSTANCE *Instance
);

參數

[in] Volume

磁碟區的不透明指標。

[out] Instance

呼叫端配置的變數指標,該變數會接收此磁碟區底部實例的不透明實例指標。 這個參數是必要的,而且不能是 NULL

傳回值

FltGetBottomInstance 會傳回STATUS_SUCCESS或適當的 NTSTATUS 值,如下所示:

傳回碼 Description
STATUS_NO_MORE_ENTRIES
找不到相符的實例。 這是警告碼。

備註

如果實例高度低於附加至相同磁碟區的所有其他實例,則實例稱為位於迷你篩選驅動程序實例堆疊 的底部 。 「高度」一詞是指實例在磁碟區迷你篩選驅動程序實例堆疊中佔用的位置。 高度愈高,實例越遠於堆疊中的基底文件系統。 指定的磁碟區上只能附加一個實例的指定高度。

高度是由 高度字串所指定,這是包含 0 到 9 之一或多個十進位數的計算 Unicode 字串,而且可以包含單一小數點。 例如,“100.123456” 和 “03333” 是有效的高度字串。

字串 “033333” 代表高於 “100.123456” 的高度。 (開頭和尾端零會被忽略。) 換句話說,高度為 “03333” 的實例比高度為 “100.123456” 的實例遠於基底文件系統。 不過,只有在兩個實例都附加至相同的磁碟區時,此比較才有意義。

FltGetBottomInstance 會在 *Instance 中傳回的不透明實例指標中新增下拉式參考。 不再需要此指標時,呼叫端必須呼叫 FltObjectDereference 來釋放它。 因此,每個成功呼叫 FltGetBottomInstance 都必須與 後續對 FltObjectDereference 的呼叫進行比對。

規格需求

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

另請參閱

FltAttachVolume

FltAttachVolumeAtAltitude

FltCompareInstanceAltitudes

FltGetLowerInstance

FltGetTopInstance

FltGetUpperInstance

FltObjectDereference