次の方法で共有


ZwQueryVolumeInformationFile 関数 (ntddk.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 で実行され、特殊なカーネル API が有効になっている 必要があります。

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

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

必要条件

要件 価値
ターゲット プラットフォーム の 万国
ヘッダー ntddk.h (Ntifs.h、Ntddk.h を含む)
ライブラリ 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