Freigeben über


NtSetQuotaInformationFile-Funktion (ntifs.h)

Die NtSetQuotaInformationFile Routine ändert Kontingenteinträge für das Volume, das dem FileHandle Parameter zugeordnet ist. Alle Kontingenteinträge im angegebenen Puffer werden auf das Volume angewendet.

Syntax

__kernel_entry NTSYSCALLAPI NTSTATUS NtSetQuotaInformationFile(
  [in]  HANDLE           FileHandle,
  [out] PIO_STATUS_BLOCK IoStatusBlock,
  [in]  PVOID            Buffer,
  [in]  ULONG            Length
);

Parameter

[in] FileHandle

Ein Handle für das Dateiobjekt, das die Datei oder das Volume darstellt, für die die Kontingentinformationen geändert werden sollen.

[out] IoStatusBlock

Die Adresse des E/A-Statusblocks des Anrufers.

[in] Buffer

Ein Puffer mit den neuen Kontingenteinträgen, die auf das Volume angewendet werden sollen. Die Kontingentinformationen müssen als eine oder mehrere FILE_QUOTA_INFORMATION Strukturen formatiert werden. Das feld NextEntryOffset in der FILE_QUOTA_INFORMATION Struktur enthält den Offset (in Byte) des nächsten Kontingenteintrags in der Liste. Wenn nach dem aktuellen keine Einträge mehr vorhanden sind, ist dieses Element null.

[in] Length

Die Länge in Byte des Puffers.

Rückgabewert

Die NtSetQuotaInformationFile Routine gibt STATUS_SUCCESS oder einen geeigneten NTSTATUS-Wert zurück, z. B. einen der folgenden:

Rückgabecode Beschreibung
STATUS_INSUFFICIENT_RESOURCES Es waren unzureichende Ressourcen vorhanden, um den Vorgang abzuschließen. Dies ist ein Fehlercode.
STATUS_INVALID_DEVICE_REQUEST Kontingente sind auf dem Volume nicht aktiviert. Dies ist ein Fehlercode.
STATUS_MEDIA_WRITE_PROTECTED Die Lautstärke ist schreibgeschützt. Dies ist ein Fehlercode.

Bemerkungen

Die NtSetQuotaInformationFile Routine wendet alle Kontingenteinträge im angegebenen Buffer Parameter auf das Volume an.

Die IoCheckQuotaBufferValidity-funktion kann überprüfen, ob der angegebene Kontingentpuffer, der als Buffer Parameter übergeben wurde, gültig ist.

Ein Aufruf von NtSetQuotaInformationFile führt dazu, dass eine IRP_MJ_SET_QUOTA Anforderung an das Geräteobjekt gesendet wird, das dem Dateiobjekt zugeordnet ist, dessen Handle im FileHandle Parameter gespeichert ist.

Wenn das zugrunde liegende Dateisystem Kontingentinformationen (z. B. FAT- und CDFS-Dateisysteme) nicht unterstützt, schlägt NtSetQuotaInformationFile- fehl, wenn STATUS_INVALID_DEVICE_REQUEST zurückgegeben werden.

Anmerkung

Wenn der Aufruf der NtSetQuotaInformationFile--Funktion im Kernelmodus auftritt, sollten Sie den Namen "[ZwSetQuotaInformationFile](nf-ntifs-zwsetquotainformationfile.md" anstelle von "NtSetQuotaInformationFile" verwenden.

Bei Aufrufen von Kernelmodustreibern können sich die NtXxx und ZwXxx- Versionen einer Windows Native System Services-Routine anders verhalten, wie sie Eingabeparameter behandeln und interpretieren. Weitere Informationen zur Beziehung zwischen den NtXxx und ZwXxx- Versionen einer Routine finden Sie unter Using Nt and Zw Versions of the Native System Services Routines.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Windows 7
Zielplattform- Universal
Header- ntifs.h (einschließlich Ntifs.h, FltKernel.h)
Library NtosKrnl.lib
DLL- NtosKrnl.exe
IRQL- PASSIVE_LEVEL
DDI-Complianceregeln HwStorPortProhibitedDIs, PowerIrpDDis

Siehe auch

FILE_GET_QUOTA_INFORMATION

FILE_QUOTA_INFORMATION

IO_STATUS_BLOCK

IRP_MJ_QUERY_QUOTA

IRP_MJ_SET_QUOTA

IoCheckQuotaBufferValidity

Verwenden von Nt- und Zw-Versionen der systemeigenen Systemdienste-Routinen

NtQueryQuotaInformationFile-