FltEnumerateInstanceInformationByVolumeName 例程會提供迷你篩選驅動程式實例和附加至具有指定名稱之磁碟區的舊版篩選驅動程式的相關信息。
語法
NTSTATUS FLTAPI FltEnumerateInstanceInformationByVolumeName(
[in] PUNICODE_STRING VolumeName,
[in] ULONG Index,
[in] INSTANCE_INFORMATION_CLASS InformationClass,
[out] PVOID Buffer,
[in] ULONG BufferSize,
[out] PULONG BytesReturned
);
參數
[in] VolumeName
要列舉篩選實例的磁碟區名稱。
[in] Index
小型篩選驅動程序實例或要求資訊的舊版篩選驅動程式之以零起始的索引。
[in] InformationClass
要針對迷你篩選驅動程序實例或舊版篩選驅動程式傳回的信息類型。 此參數可以有下列其中一個值。
| 價值 | 意義 |
|---|---|
| InstanceBasicInformation | Buffer 參數所指向的緩衝區會接收小型篩選實例的 INSTANCE_BASIC_INFORMATION 結構。 會忽略舊版篩選驅動程式。 |
| InstanceFullInformation | Buffer 參數所指向的緩衝區會接收小型篩選實例的 INSTANCE_FULL_INFORMATION 結構。 會忽略舊版篩選驅動程式。 |
| InstancePartialInformation | Buffer 參數所指向的緩衝區會接收迷你篩選實例的 INSTANCE_PARTIAL_INFORMATION 結構。 會忽略舊版篩選驅動程式。 |
| InstanceAggregateStandardInformation | Buffer 參數所指向的緩衝區會接收小型篩選驅動程式實例或舊版篩選驅動程式的 INSTANCE_AGGREGATE_STANDARD_INFORMATION 結構。 |
[out] Buffer
接收所要求資訊的呼叫端配置緩衝區指標。 緩衝區中傳回的信息類型是由 InformationClass 參數所定義。
[in] BufferSize
Buffer 參數指向的緩衝區大小,以位元組為單位。 呼叫端應該根據指定的 InformationClass 值來設定此參數。
[out] BytesReturned
呼叫端配置的變數指標,該變數會接收緩衝區中傳回的位元組數目,Buffer 指向該緩衝區。 如果 BufferSize 的輸入值太小,FltEnumerateInstanceInformationByVolumeName 會傳回 STATUS_BUFFER_TOO_SMALL,並將此變數設定為儲存要求資訊所需的位元組數目。 這是必要參數,而且無法 NULL。
傳回值
FltEnumerateInstanceInformationByVolumeName 會傳回 STATUS_SUCCESS 或適當的 NTSTATUS 值,例如下列其中一項:
| 傳回碼 | 描述 |
|---|---|
|
Buffer 參數指向的緩衝區不夠大,無法儲存要求的資訊。 |
|
找到相符的小型篩選實例,但正在被拆毀。 請注意,此傳回值不適用於舊版篩選驅動程式,因為無法卸除舊版篩選驅動程式。 |
|
InformationClass 參數指定了無效的值。
-或- VolumeName 包含無效的磁碟區名稱。 |
|
磁碟區的實例/篩選清單中沒有其他專案。 |
|
VolumeName 中指定的磁碟區不存在。 |
|
VolumeName 中指定的磁碟區路徑不存在。 |
|
VolumeName 所指定的磁碟區沒有附加任何篩選實例。
-或- VolumeName 所指定的磁碟區正從系統中移除。 |
|
VolumeName 所指定的磁碟區已註冊,但沒有附加任何篩選實例。 |
言論
使用 Index 參數,只是 FltEnumerateInstanceInformationByVolumeName 在小型篩選驅動程式實例和舊版篩選驅動程式之間選取的方法,以及 VolumeName所指定磁碟區之磁盤區的舊版篩選驅動程式。 由於實例/篩選清單中的迷你篩選驅動程序實例隨時都可以變更,因此,FltEnumerateInstanceInformationByVolumeName 的兩次呼叫會使用相同的 Index,且 VolumeName 值不保證會傳回相同的結果。
當 InformationClass 參數的值 InstanceAggregateStandardInformation時,此例程會同時傳回舊版篩選驅動程式資訊和小型篩選驅動程序實例資訊。
要求
| 要求 | 價值 |
|---|---|
| 最低支援的用戶端 | 從 Windows 8 開始提供。 |
| 目標平臺 | 普遍 |
| 標頭 | fltkernel.h (包括 Fltkernel.h) |
| 連結庫 | FltMgr.lib |
| IRQL | <= APC_LEVEL |
另請參閱
FltEnumerateInstanceInformationByDeviceObject