FltCompareInstanceAltitudes 関数 (fltkernel.h)

fltCompareInstanceAltitudes 、2 つのミニフィルター ドライバー インスタンスの高度を比較します。

構文

LONG FLTAPI FltCompareInstanceAltitudes(
  [in] PFLT_INSTANCE Instance1,
  [in] PFLT_INSTANCE Instance2
);

パラメーター

[in] Instance1

最初のインスタンスへのポインター。

[in] Instance2

2 番目のインスタンスへのポインター。

戻り値

fltCompareInstanceAltitudes は、次のように比較の結果を示す符号付き値を返します。

リターン コード 形容
ゼロ
Instance1 は、Instance2と同じ高度でアタッチされます。 これは、Instance1 と Instance2 が異なるボリュームにアタッチされている場合、またはインスタンス 1 と Instance2 同じインスタンスへのポインターである場合にのみ発生します。
0 未満の
Instance1 は、Instance2よりも低い高度でアタッチされます。
0 より大きい
Instance1 は、Instance2よりも高い高度でアタッチされます。

備考

Instance1 と Instance2 ミニフィルター ドライバー インスタンスは、同じミニフィルター ドライバーのインスタンスまたは異なるミニフィルター ドライバーにすることができます。 ただし、fltCompareInstanceAltitudes によって返される結果が意味を持つ 場合は、同じボリュームにアタッチする必要があります。

"高度" という用語は、ボリュームのミニフィルター ドライバー インスタンス スタック内でインスタンスが占有する (または占有する必要がある) 位置を指します。 高度が高いほど、インスタンスはスタック内の基本ファイル システムから遠くなります。 特定のボリューム上の特定の高度にアタッチできるインスタンスは 1 つだけです。

高度は、高度文字列によって指定されます。これは、0 から 9 までの 1 つ以上の 10 進数で構成されるカウントされた Unicode 文字列です。文字列には、1 つの小数点を含めることができます。 たとえば、"100.123456" と "03333" は有効な高度文字列です。

文字列 "03333" は、"100.123456" より高い高度を表します (先頭と末尾のゼロは無視されます)。つまり、高度が "03333" のインスタンスは、高度が "100.123456" のインスタンスよりもベース ファイル システムから離れています。 ただし、この比較は、両方のインスタンスが同じボリュームにアタッチされている場合にのみ意味があります。

ミニフィルター ドライバー インスタンスをボリュームにアタッチするには、FltAttachVolume 呼び出すか、FltAttachVolumeAtAltitude を呼び出します。

ミニフィルター ドライバー インスタンスをボリュームからデタッチするには、FltDetachVolume 呼び出します。

必要条件

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

関連項目

FltAttachVolume を する

FltAttachVolumeAtAltitude を する

FltCompareInstanceAltitudes の

FltDetachVolume の