次の方法で共有


FltGetFilterFromInstance 関数 (fltkernel.h)

FltGetFilterFromInstance ルーチンは、特定のインスタンスを作成したミニフィルター ドライバーの不透明なフィルター ポインターを返します。

構文

NTSTATUS FLTAPI FltGetFilterFromInstance(
  [in]  PFLT_INSTANCE Instance,
  [out] PFLT_FILTER   *RetFilter
);

パラメーター

[in] Instance

インスタンスの不透明なインスタンス ポインター。

[out] RetFilter

ミニフィルター ドライバーの不透明なフィルター ポインターを受け取る呼び出し元によって割り当てられた変数へのポインター。 このパラメーターは必須であり、NULL することはできません。

戻り値

FltGetFilterFromInstance は、STATUS_SUCCESSまたは次のような適切な NTSTATUS 値を返します。

リターン コード 形容
STATUS_FLT_DELETING_OBJECT
ミニフィルター ドライバーが切断されています。 これはエラー コードです。

備考

FltGetFilterFromInstance RetFilter パラメーターで返される不透明なフィルター ポインターにランダウン参照を追加します。 このポインターが不要になったら、呼び出し元は FltObjectDereference 呼び出してポインターを解放する必要があります。 したがって、FltGetFilterFromInstance 正常に呼び出されるたびに、FltObjectDereference への後続の呼び出し照合する必要があります。

特定のミニフィルター ドライバー インスタンスがアタッチされているボリュームの不透明なボリューム ポインターを取得するには、FltGetVolumeFromInstance 呼び出します。

特定のミニフィルター ドライバーのすべてのインスタンスを列挙するには、FltEnumerateInstanceInformationByFilter を呼び出します。

すべてのボリューム上のすべてのミニフィルター ドライバーのインスタンスを列挙するには、FltEnumerateInstances 呼び出します。

必要条件

要件 価値
ターゲット プラットフォーム 万国
ヘッダー fltkernel.h (Fltkernel.h を含む)
ライブラリ FltMgr.lib
DLL Fltmgr.sys
IRQL <= APC_LEVEL

関連項目

FltEnumerateInstanceInformationByFilter

FltEnumerateInstances

FltGetVolumeFromInstance する

FltObjectDereference