共用方式為


ZwSetQuotaInformationFile 函式 (ntifs.h)

ZwSetQuotaInformationFile 例程會變更與 FileHandle 參數相關聯之磁碟區的配額專案。 指定緩衝區中的所有配額項目都會套用至磁碟區。

語法

NTSYSAPI NTSTATUS ZwSetQuotaInformationFile(
  [in]  HANDLE           FileHandle,
  [out] PIO_STATUS_BLOCK IoStatusBlock,
  [in]  PVOID            Buffer,
  [in]  ULONG            Length
);

參數

[in] FileHandle

檔案物件的句柄,表示要修改配額信息的檔案或磁碟區。

[out] IoStatusBlock

呼叫端 I/O 狀態區塊的位址。

[in] Buffer

緩衝區,包含應套用至磁碟區的新配額專案。 配額信息必須格式化為一或多個 FILE_QUOTA_INFORMATION 結構。 FILE_QUOTA_INFORMATION 結構中的 NextEntryOffset 欄位包含清單中下一個配額專案的位移,以位元組為單位。 如果目前項目之後沒有其他專案,則此成員為零。

[in] Length

緩衝區的位元組長度。

傳回值

ZwSetQuotaInformationFile 例程會傳回STATUS_SUCCESS或適當的 NTSTATUS 值,例如下列其中一項:

傳回碼 描述
STATUS_INSUFFICIENT_RESOURCES 資源不足,無法完成作業。 這是錯誤碼。
STATUS_INVALID_DEVICE_REQUEST 磁碟區上未啟用配額。 這是錯誤碼。
STATUS_MEDIA_WRITE_PROTECTED 磁碟區是唯讀的。 這是錯誤碼。

言論

ZwSetQuotaInformationFile 例程會將指定 Buffer 參數中的所有配額專案套用至磁碟區。

IoCheckQuotaBufferValidity 函式可以檢查傳遞為 Buffer 參數的指定配額緩衝區是否有效。

ZwSetQuotaInformationFile 的呼叫會導致傳送 IRP_MJ_SET_QUOTA 要求給與檔案對象相關聯的裝置物件,該物件句柄儲存在 fileHandle 參數

如果基礎文件系統不支援配額資訊(例如 FAT 和 CDFS 檔案系統),ZwSetQuotaInformationFile 會失敗傳回STATUS_INVALID_DEVICE_REQUEST。

注意

如果在使用者模式中呼叫 ZwSetQuotaInformationFile 函式,您應該使用名稱 “NtSetQuotaInformationFile”,而不是 “ZwSetQuotaInformationFile”。

對於內核模式驅動程式的呼叫,NtXxxZwXxx 版本的 Windows 原生系統服務例程,在處理和解譯輸入參數的方式上可能會有不同的行為。 如需 nt NtXxxZwXxx 例程之間關聯性的詳細資訊,請參閱 使用 Nt 和 Zw 版本的原生系統服務例程

要求

要求 價值
最低支援的用戶端 Windows 7
目標平臺 普遍
標頭 ntifs.h (include Ntifs.h, FltKernel.h)
連結庫 NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL
DDI 合規性規則 HwStorPortProhibitedDIs(storport)PowerIrpDDis(wdm)

另請參閱

FILE_GET_QUOTA_INFORMATION

FILE_QUOTA_INFORMATION

IO_STATUS_BLOCK

IRP_MJ_QUERY_QUOTA

IRP_MJ_SET_QUOTA

IoCheckQuotaBufferValidity

使用 Nt 和 Zw 版本的原生系統服務例程

ZwQueryQuotaInformationFile