FltGetVolumeFromDeviceObject 関数 (fltkernel.h)
FltGetVolumeFromDeviceObject ルーチンは、ボリューム デバイス オブジェクト (VDO) によって表されるボリュームの不透明なポインターを返します。
構文
NTSTATUS FLTAPI FltGetVolumeFromDeviceObject(
[in] PFLT_FILTER Filter,
[in] PDEVICE_OBJECT DeviceObject,
[out] PFLT_VOLUME *RetVolume
);
パラメーター
[in] Filter
呼び出し元の不透明なフィルター ポインター。 このパラメーターは必須であり、NULL することはできません。
[in] DeviceObject
ボリューム デバイス オブジェクトへのポインター。
[out] RetVolume
ボリュームの不透明なポインターを受け取る呼び出し元によって割り当てられた変数へのポインター。 このパラメーターは必須であり、NULL することはできません。
戻り値
FltGetVolumeFromDeviceObject は、STATUS_SUCCESSまたは次のいずれかの適切な NTSTATUS 値を返します。
リターン コード | 形容 |
---|---|
STATUS_FLT_DELETING_OBJECT | ボリュームが切断されています。 これはエラー コードです。 |
STATUS_INVALID_PARAMETER | DeviceObject パラメーターで指定されたボリューム デバイス オブジェクトが有効なボリューム デバイス オブジェクト ポインターではなかったか、一致するボリュームが見つかりませんでした。 これはエラー コードです。 |
備考
DeviceObject パラメーターには、フィルターまたはファイル システム ボリューム デバイス オブジェクト (VDO) へのポインターを指定できます。 ストレージ デバイス オブジェクトを指している場合は、FltGetVolumeFromDeviceObject はSTATUS_INVALID_PARAMETERを返します。
ボリューム デバイス オブジェクトの詳細については、「ファイル システム スタックの」を参照してください。
FltGetVolumeFromDeviceObject 、RetVolume パラメーターで返される不透明なボリューム ポインターへのランダウン参照を追加します。 このポインターが不要になったら、呼び出し元は FltObjectDereference呼び出してポインターを解放する必要があります。 したがって、FltGetVolumeFromDeviceObject 呼び出しが成功するたびに、FltObjectDereference への後続の呼び出し照合する必要があります。
特定のボリュームのデバイス オブジェクトへのポインターを取得するには、FltGetDeviceObject呼び出します。
必要条件
要件 | 価値 |
---|---|
ターゲット プラットフォーム の | 万国 |
ヘッダー | fltkernel.h (Fltkernel.h を含む) |
ライブラリ | FltMgr.lib |
DLL | Fltmgr.sys |
IRQL | <= APC_LEVEL |
関連項目
FltGetDeviceObjectの
FltGetDiskDeviceObjectの
FltObjectDereferenceの