ZwQueryVolumeInformationFile 関数 (ntifs.h)

ZwQueryVolumeInformationFile ルーチンは、特定のファイル、ディレクトリ、ストレージ デバイス、またはボリュームに関連付けられているボリュームに関する情報を取得します。

構文

NTSYSAPI NTSTATUS ZwQueryVolumeInformationFile(
  [in]  HANDLE               FileHandle,
  [out] PIO_STATUS_BLOCK     IoStatusBlock,
  [out] PVOID                FsInformation,
  [in]  ULONG                Length,
  [in]  FS_INFORMATION_CLASS FsInformationClass
);

パラメーター

[in] FileHandle

ボリューム情報が要求されている開いているファイル、ディレクトリ、ストレージ デバイス、またはボリュームの ZwCreateFile または ZwOpenFile によって返されるファイル オブジェクトへのハンドル。

[out] IoStatusBlock

最終的 な完了 状態とクエリ操作に関する情報を受け取るIO_STATUS_BLOCK構造体へのポインター。 データを返す呼び出しが成功した場合は、 FsInformation バッファーに書き込まれたバイト数が構造体の Information メンバーに返されます。

[out] FsInformation

ボリュームに関する必要な情報を受け取る呼び出し元によって割り当てられたバッファーへのポインター。 バッファーで返される情報の構造は、 FsInformationClass パラメーターによって定義されます。

[in] Length

FsInformation が指すバッファーのサイズ (バイト単位)。 呼び出し元は、指定された FsInformationClass に従ってこのパラメーターを設定する必要があります。

[in] FsInformationClass

ボリュームに関して返される情報の種類。 このメンバーを次のいずれかのFS_INFORMATION_CLASS列挙値 設定します。

意味
FileFsAttributeInformation ボリュームを担当するファイル システムに関する属性情報を含む FILE_FS_ATTRIBUTE_INFORMATION 構造体を返します。
FileFsControlInformation ボリュームに関するファイル システム制御情報を含む FILE_FS_CONTROL_INFORMATION 構造体を返します。
FileFsDeviceInformation ボリュームのデバイス情報を含む FILE_FS_DEVICE_INFORMATION 構造体を返します。
FileFsDriverPathInformation 指定したドライバー ボリュームの I/O パスにあるかどうかに関する情報を含むFILE_FS_DRIVER_PATH_INFORMATION構造体を返します。 呼び出し元は、ZwQueryVolumeInformationFile を呼び出す前に、ドライバーの名前を 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構造体を返します。

戻り値

ZwQueryVolumeInformationFile は 、STATUS_SUCCESSまたは適切なエラー状態を返します。

注釈

ZwQueryVolumeInformationFile は 、特定のファイル、ディレクトリ、ストレージ デバイス、またはボリュームに関連付けられているボリュームに関する情報を取得します。

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

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

その他のファイル情報クエリ ルーチンの詳細については、「 ファイル オブジェクト」を参照してください。

ミニフィルターでは、 ZwQueryVolumeInformationFile の代わりに FltQueryVolumeInformationFile を使用する必要があります。

ZwQueryVolumeInformationFile の呼び出し元は、IRQL = PASSIVE_LEVEL で実行され、特殊なカーネル APC が有効になっている必要があります。

注意

ZwQueryVolumeInformationFile 関数の呼び出しがユーザー モードで行われる場合は、"ZwQueryVolumeInformationFile" ではなく"NtQueryVolumeInformationFile" という名前を使用する必要があります。

カーネル モード ドライバーからの呼び出しの場合、Windows ネイティブ システム サービス ルーチンの NtXxx および ZwXxx バージョンは、入力パラメーターを処理および解釈する方法で動作が異なる場合があります。 ルーチンの NtXxx バージョンと ZwXxx バージョンの間の関係の詳細については、「ネイティブ システム サービス ルーチンの Nt バージョンと Zw バージョンの使用」を参照してください。

要件

要件
サポートされている最小のクライアント Windows XP
対象プラットフォーム ユニバーサル
Header ntifs.h (Ntifs.h、Ntddk.h を含む)
Library NtosKrnl.lib
[DLL] NtosKrnl.exe
IRQL PASSIVE_LEVEL (「解説」セクションを参照)
DDI コンプライアンス規則 HwStorPortProhibitedDDIs(storport), PowerIrpDDis(wdm)

こちらもご覧ください

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_SIZE_INFORMATION

FILE_FS_VOLUME_INFORMATION

FltQueryVolumeInformationFile

IRP_MJ_QUERY_VOLUME_INFORMATION

IRP_MJ_SET_VOLUME_INFORMATION

Nt および Zw バージョンのネイティブ システム サービス ルーチンの使用

ZwCreateFile

ZwOpenFile

ZwQueryDirectoryFile

ZwQueryInformationFile

ZwSetInformationFile

ZwSetVolumeInformationFile