FltGetUpperInstance 例程會針對下一個較高的小型篩選驅動程式實例傳回不透明的實例指標,如果有一個,則附加在相同磁碟區上給定的小型篩選驅動程序實例上方。
語法
NTSTATUS FLTAPI FltGetUpperInstance(
[in] PFLT_INSTANCE CurrentInstance,
[out] PFLT_INSTANCE *UpperInstance
);
參數
[in] CurrentInstance
要求下一個較高實例之實例的不透明實例指標。
[out] UpperInstance
呼叫端配置的變數指標,該變數會接收下一個較高實例的不透明實例指標。 這是必要參數,而且無法 NULL。
傳回值
FltGetUpperInstance 會傳回STATUS_SUCCESS或適當的 NTSTATUS 值,如下所示:
| 傳回碼 | 描述 |
|---|---|
|
找不到較高的實例。 這是警告碼。 |
言論
一個實例據說是 高於 另一個實例,如果連接在同一卷較高的高度。 「高度」一詞是指實例在磁碟區迷你篩選驅動程序實例堆疊中佔據的位置(或應該佔用)。 高度越高,實例離堆疊中的基底文件系統越遠。 在指定磁碟區上的指定高度只能附加一個實例。
高度是由高度字串 所指定,,這是由介於 0 到 9 範圍內的一或多個十進位數組成的計算 Unicode 字串,而且可以包含單一小數點。 例如,“100.123456” 和 “03333” 是有效的高度字串。
字串 “033333” 代表高於 “100.123456” 的高度。 (忽略前置和尾端零。換句話說,高度為 “03333” 的實例比高度為 “100.123456” 的實例遠於基底文件系統。 不過,只有在這兩個實例都附加至相同的磁碟區時,此比較才有意義。
FltGetUpperInstance 會將 rundown 參考新增至 upperInstance 參數中所傳回的不透明實例指標。 不再需要此指標時,呼叫端必須呼叫 FltObjectDereference來釋放它。 因此,FltGetUpperInstance 的每個成功呼叫,都必須比對 FltObjectDereference的後續呼叫。
要求
| 要求 | 價值 |
|---|---|
| 目標平臺 | 普遍 |
| 標頭 | fltkernel.h (包括 Fltkernel.h) |
| 連結庫 | FltMgr.lib |
| DLL | Fltmgr.sys |
| IRQL | <= APC_LEVEL |