FltGetInstanceInformation 函式 (fltkernel.h)

FltGetInstanceInformation 例程會傳回迷你篩選驅動程序實例的相關信息。

語法

NTSTATUS FLTAPI FltGetInstanceInformation(
  [in]  PFLT_INSTANCE              Instance,
  [in]  INSTANCE_INFORMATION_CLASS InformationClass,
  [out] PVOID                      Buffer,
  [in]  ULONG                      BufferSize,
  [out] PULONG                     BytesReturned
);

參數

[in] Instance

呼叫端的不透明實例指標。

[in] InformationClass

要求的信息類型。 此參數可以有下列其中一個值。

意義
InstanceBasicInformation Buffer 參數指向的緩衝區會收到 實例的INSTANCE_BASIC_INFORMATION結構。
InstanceFullInformation Buffer 參數指向的緩衝區會收到 實例的INSTANCE_FULL_INFORMATION結構。
InstancePartialInformation Buffer 參數指向的緩衝區會收到 實例的INSTANCE_PARTIAL_INFORMATION結構。
InstanceAggregateStandardInformation Buffer 參數指向的緩衝區會收到 實例的INSTANCE_AGGREGATE_STANDARD_INFORMATION結構。 未使用結構的 LegacyFilter 部分。 從 Windows Vista 開始,即可使用此結構。

[out] Buffer

接收所要求資訊的呼叫端配置緩衝區指標。 緩衝區中傳回的信息類型是由 InformationClass 參數所定義。

[in] BufferSize

Buffer 參數所指向緩衝區的大小,以位元組為單位。 呼叫端應該根據指定的 InformationClass 值來設定此參數。

[out] BytesReturned

呼叫端配置的變數指標,該變數會接收 Buffer 指向之緩衝區中傳回的位元組數目。 如果 BufferSize 的輸入值太小, FltGetInstanceInformation 會傳回STATUS_BUFFER_TOO_SMALL並將此變數設定為儲存所要求資訊所需的位元元組數目。 這個參數是必要的,而且不能是 NULL

傳回值

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

傳回碼 Description
STATUS_BUFFER_TOO_SMALL
Buffer 參數指向的緩衝區不夠大,無法儲存要求的資訊。 這是錯誤碼。
STATUS_INVALID_PARAMETER
InformationClass 參數指定了無效的值。 例如,如果在 Windows Vista 之前的作業系統上指定 InstanceAggregateStandardInformation ,則例程會傳回STATUS_INVALID_PARAMETER。 這是錯誤碼。

備註

假設有迷你篩選實例的指標,這個例程會傳回迷你篩選實例的相關信息。 傳回的實例資訊類型是由 InformationClass 參數所決定。

規格需求

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

另請參閱

FltEnumerateFilterInformation

FltEnumerateInstanceInformationByFilter

FltEnumerateInstanceInformationByVolume

FltGetFilterInformation

INSTANCE_AGGREGATE_STANDARD_INFORMATION

INSTANCE_BASIC_INFORMATION

INSTANCE_FULL_INFORMATION

INSTANCE_PARTIAL_INFORMATION