次の方法で共有


FltQueryVolumeInformationFile 関数 (fltkernel.h)

FltQueryVolumeInformationFile は、特定のファイル、ディレクトリ、ストレージ デバイス、またはボリュームのボリューム情報を取得します。

構文

NTSTATUS FLTAPI FltQueryVolumeInformationFile(
  [in]            PFLT_INSTANCE        Instance,
  [in]            PFILE_OBJECT         FileObject,
  [out]           PVOID                FsInformation,
  [in]            ULONG                Length,
  [in]            FS_INFORMATION_CLASS FsInformationClass,
  [out, optional] PULONG               LengthReturned
);

パラメーター

[in] Instance

呼び出し元の不透明なインスタンス ポインター。 このパラメーターは必須であり、NULL することはできません。

[in] FileObject

開いているファイル、ディレクトリ、ストレージ デバイス、またはボリュームのファイル オブジェクト ポインター。 このパラメーターは必須であり、NULL することはできません。

[out] FsInformation

ファイルに関する情報を受け取る呼び出し元によって割り当てられたバッファーへのポインター。 FsInformationClass パラメーターは、情報の種類を指定します。 このパラメーターは必須であり、NULL することはできません。

[in] Length

FsInformation バッファーのサイズ (バイト単位)。

[in] FsInformationClass

返されるボリューム情報の種類。 次のいずれかの手順を実行します。

価値 意味
FileFsAttributeInformation
ボリュームを担当するファイル システムに関する属性情報を含む FILE_FS_ATTRIBUTE_INFORMATION 構造体を返します。
FileFsControlInformation
ボリュームに関するファイル システム制御情報を含む FILE_FS_CONTROL_INFORMATION 構造体を返します。
FileFsDeviceInformation
ボリュームのデバイス情報を含む FILE_FS_DEVICE_INFORMATION 構造体を返します。
FileFsDriverPathInformation
指定したドライバーがボリュームの I/O パスにあるかどうかに関する情報を含む FILE_FS_DRIVER_PATH_INFORMATION 構造体を返します。 呼び出し元は、FltQueryVolumeInformationFile を呼び出す前に、ドライバーの名前FILE_FS_DRIVER_PATH_INFORMATION 構造体に格納する必要があります。
fileFsFullSizeInformation
ボリュームで使用可能な領域の合計量に関する情報を含む FILE_FS_FULL_SIZE_INFORMATION 構造体を返します。
FileFsObjectIdInformation
ボリュームのファイル システム固有のオブジェクト ID 情報を含む FILE_FS_OBJECTID_INFORMATION 構造体を返します。 これは、オペレーティング システムによって割り当てられる (GUID ベースの) 一意のボリューム名と同じではないことに注意してください。
FileFsSizeInformation
呼び出し元のスレッドに関連付けられているユーザーが使用できるボリューム上の領域の量に関する情報を含む FILE_FS_SIZE_INFORMATION 構造体を返します。
FileFsVolumeInformation
ボリューム ラベル、シリアル番号、作成時刻などのボリュームに関する情報を含む FILE_FS_VOLUME_INFORMATION を返します。
FileFsSectorSizeInformation
ボリュームの物理セクター サイズと論理セクター サイズに関する情報を含む FILE_FS_SECTOR_SIZE_INFORMATION 構造体を返します。

[out, optional] LengthReturned

FsInformation バッファーで返される情報のサイズ (バイト単位) を受け取る呼び出し元によって割り当てられた変数へのポインター。 このパラメーターは省略可能であり、NULL できます。

戻り値

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

リターン コード 形容
STATUS_VOLUME_DISMOUNTED
ボリュームは現在マウントされていません。 これはエラー コードです。

備考

FltQueryVolumeInformationFile は、特定のファイル、ディレクトリ、ストレージ デバイス、またはボリュームのボリューム情報を取得します。

FileObject が直接開いているデバイスを表す場合は、の FileFsDeviceInformation のみを FsInformationClassの値として指定できます。

FltQueryVolumeInformationFile は、特定のファイル システムでサポートされていないFILE_FS_XXX_INFORMATION 構造体のメンバーで 0 を返します。

必要条件

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

関連項目

FILE_FS_ATTRIBUTE_INFORMATION

FILE_FS_CONTROL_INFORMATION

FILE_FS_DEVICE_INFORMATION

FILE_FS_DRIVER_PATH_INFORMATION

FILE_FS_FULL_SIZE_INFORMATION

FILE_FS_OBJECTID_INFORMATION

FILE_FS_SECTOR_SIZE_INFORMATION

FILE_FS_SIZE_INFORMATION

FILE_FS_VOLUME_INFORMATION

FltSetInformationFile