ZwQueryQuotaInformationFile 関数 (ntifs.h)
ZwQueryQuotaInformationFile ルーチンは、FileHandle パラメーターで指定されたボリュームに関連付けられたクォータ エントリを取得します。
構文
NTSYSAPI NTSTATUS ZwQueryQuotaInformationFile(
[in] HANDLE FileHandle,
[out] PIO_STATUS_BLOCK IoStatusBlock,
[out] PVOID Buffer,
[in] ULONG Length,
[in] BOOLEAN ReturnSingleEntry,
[in, optional] PVOID SidList,
[in] ULONG SidListLength,
[in, optional] PSID StartSid,
[in] BOOLEAN RestartScan
);
パラメーター
[in] FileHandle
クォータ情報が要求されるファイルまたはボリュームを表すファイル オブジェクトのハンドル。
[out] IoStatusBlock
呼び出し元の I/O 状態ブロックのアドレス。
[out] Buffer
ボリュームのクォータ情報を受信するバッファー。 クォータ情報は、1 つ以上の FILE_QUOTA_INFORMATION 構造体として書式設定されます。 FILE_QUOTA_INFORMATION 構造体の NextEntryOffset フィールドには、リスト内の次のクォータ エントリのオフセット (バイト単位) が含まれています。 現在のエントリの後にエントリが存在しない場合、このメンバーは 0 になります。
[in] Length
バッファーの長さ (バイト単位)。
[in] ReturnSingleEntry
バッファーにできるだけ多くのエントリを格納するのではなく、1 つのエントリのみを返す必要があるかどうかを示すブール値。
[in, optional] SidList
クォータ情報が返される SID の省略可能なリスト。 リスト内の各エントリは FILE_GET_QUOTA_INFORMATION 構造です。 FILE_GET_QUOTA_INFORMATION 構造体の NextEntryOffset フィールドには、リスト内の次のクォータ エントリのオフセット (バイト単位) が含まれています。 現在のエントリの後にエントリが存在しない場合、このメンバーは 0 になります。
[in] SidListLength
SID リストの長さ (指定されている場合)。
[in, optional] StartSid
クォータ情報のスキャンを開始するエントリの SID への省略可能なポインター。 返される情報が最初の SID 以外のエントリで始まる場合は、このパラメーターを設定する必要があります。 SidList パラメーターが指定されている場合、このパラメーターは無視されます。
[in] RestartScan
クォータ情報のスキャンを最初から再開するかどうかを示すブール値。 クォータ情報のスキャンがボリュームのクォータ情報リストの最初のエントリから開始する場合は、このパラメーターを TRUE に設定します。 ZwQueryQuotaInformationFileへの前回の呼び出しからスキャンを再開する場合は、FALSE
戻り値
ZwQueryQuotaInformationFile ルーチンは、Buffer パラメーターに少なくとも 1 つの FILE_QUOTA_INFORMATION 構造体が返された場合、または次のいずれかの適切な NTSTATUS 値が返された場合、STATUS_SUCCESSを返します。
リターン コード | 形容 |
---|---|
STATUS_INSUFFICIENT_RESOURCES | 操作を完了するためのリソースが不足していました。 これはエラー コードです。 |
STATUS_INVALID_DEVICE_REQUEST | クォータはボリュームで有効になっていません。 これはエラー コードです。 |
STATUS_INVALID_SID | StartSid パラメーターに、有効な SIDが含まれていませんでした。 これはエラー コードです。 |
STATUS_QUOTA_LIST_INCONSISTENT | SidList パラメーターに、正しい形式の有効なリストが含まれていませんでした。 これはエラー コードです。 |
備考
ZwQueryQuotaInformationFile によって返される情報の量は、ボリュームに関連付けられているクォータ情報のサイズ、バッファーのサイズ、およびエントリの特定のセットが要求されたかどうかに基づきます。
ZwQueryQuotaInformationFile
基になるファイル システムがクォータ情報 (FAT や CDFS ファイル システムなど) をサポートしていない場合、ZwQueryQuotaInformationFile はSTATUS_INVALID_DEVICE_REQUESTを返しません。
手記
ZwQueryQuotaInformationFile 関数の呼び出しがユーザー モードで発生する場合は、"ZwQueryQuotaInformationFile" ではなく"NtQueryQuotaInformationFile" という名前を使用する必要があります。
カーネル モード ドライバーからの呼び出しの場合、Windows ネイティブ システム サービス ルーチンの NtXxx および ZwXxx バージョンは、入力パラメーターを処理および解釈する方法で動作が異なる場合があります。 ルーチンの NtXxx と ZwXxx バージョンの間の関係の詳細については、「ネイティブ システム サービス ルーチンの Nt および Zw バージョンの使用 を参照してください。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows 7 |
ターゲット プラットフォーム の |
万国 |
ヘッダー | ntifs.h (Ntifs.h、FltKernel.h を含む) |
ライブラリ | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL |
DDI コンプライアンス規則 を |
HwStorPortProhibitedDDIs(storport), PowerIrpDDis(wdm) |