FilterAttachAtAltitude 函式 (fltuser.h)
FilterAttachAtAltitude函式是偵錯支援函式,會將新的迷你篩選實例附加至指定高度的磁片區,並覆寫迷你篩選程式設定資訊中的任何設定, (INF) 檔案。
語法
HRESULT FilterAttachAtAltitude(
[in] LPCWSTR lpFilterName,
[in] LPCWSTR lpVolumeName,
[in] LPCWSTR lpAltitude,
[in, optional] LPCWSTR lpInstanceName,
[in, optional] DWORD dwCreatedInstanceNameLength,
[out, optional] LPWSTR lpCreatedInstanceName
);
參數
[in] lpFilterName
Null 終止寬字元字串的指標,其中包含要為其建立實例的迷你篩選名稱。 這個參數是必要的,而且不能是 Null。
[in] lpVolumeName
Null 終止寬字元字串的指標,其中包含要附加新建立之實例的磁片區名稱。
lpVolumeName輸入字串可以是下列任一項。 尾端反斜線 (\) 是選擇性的。
- 磁碟機號,例如 「D:\」
- 磁片區掛接點的路徑,例如 「c:\mnt\edrive\」
- 磁片區識別碼 (也稱為磁片區 GUID 名稱) ,例如 「\??\Volume{7603f260-142a-11d4-ac67-806d6172696f}\」
- 非持續性裝置名稱 (也稱為 目標名稱 或 NT 裝置名稱) ,例如 「\Device\HarddiskVolume1\」
[in] lpAltitude
Null 終止寬字元字串的指標,其中包含數值,指定迷你篩選實例在磁片區堆疊中應該佔用的目標位置。 數位愈高,堆疊中相對位置愈高。 高度字串包含範圍從 0 到 9 的一或多個數位,而且可以包含單一小數點。 小數點是選擇性的。 例如,「100.123456」 是有效的高度字串。 這個參數是必要的,而且不能是 Null。
[in, optional] lpInstanceName
Null 終止寬字元字串的指標,其中包含新實例的實例名稱。 這個參數是選擇性的,而且可以是 Null。 如果此參數為 Null,新實例會收到迷你篩選的預設實例名稱,如 FltAttachVolume的一節中所述。
[in, optional] dwCreatedInstanceNameLength
lpCreatedInstanceName指向的緩衝區長度,以位元組為單位。 這個參數是選擇性的,而且可以是零。
[out, optional] lpCreatedInstanceName
如果實例成功附加至磁片區,則呼叫端配置的變數會接收新實例的實例名稱的指標。 這個參數是選擇性的,而且可以是 Null。 如果不是 Null,緩衝區必須夠大,才能保存INSTANCE_NAME_MAX_CHARS字元加上 Null 結束字元。
傳回值
如果成功,FilterAttachAtAltitude會傳回S_OK。 否則,它會傳回錯誤值,例如下列其中一項。
傳回碼 | 描述 |
---|---|
|
實例已存在於指定的磁片區上這個高度。 |
|
指定的磁片區上已有這個名稱的實例存在。 |
備註
應用程式應該只使用 FilterAttachAtAltitude 進行偵錯。 它不應該在應用程式的零售版本中呼叫此函式。
FilterAttachAtAltitude 是 Win32 相當於 FltAttachVolumeAtAltitude。
「高度」一詞是指實例佔用 (或應該佔用磁片區迷你篩選實例堆疊中) 的位置。 高度愈高,實例就愈遠于堆疊中的基底檔案系統。 在指定磁片區上的指定高度上,只能附加一個實例。
高度是由 高度字串所指定,這是寬字元陣列,其中包含介於 0 到 9 之間的一或多個十進位數,而且可以包含單一小數點。 小數點是選擇性的。 例如,「100.123456」 和 「03333」 是有效的高度字串。
字串 「03333」 代表比 「100.123456」 更高的高度。 (會忽略前置和尾端零。) 換句話說,高度為 「03333」 的實例比高度為 「100.123456」 的實例遠于基底檔案系統。 不過,只有在兩個實例都附加至相同的磁片區時,此比較才有意義。
在 lpCreatedInstanceName中傳回的實例名稱在整個系統中是唯一的。
若要從磁片區中斷連結迷你篩選實例,請呼叫 FilterDetach。
需求
目標平台 | Universal |
標頭 | fltuser.h (包含 Fltuser.h) |
程式庫 | FltLib.lib |
Dll | FltLib.dll |