Funzione NtQueryQuotaInformationFile (ntifs.h)
La routine NtQueryQuotaInformationFile recupera le voci di quota associate al volume specificato dal parametro FileHandle .
Sintassi
__kernel_entry NTSYSCALLAPI NTSTATUS NtQueryQuotaInformationFile(
[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
);
Parametri
[in] FileHandle
Handle per l'oggetto file che rappresenta il file o il volume per cui sono richieste le informazioni sulla quota.
[out] IoStatusBlock
Indirizzo del blocco di stato di I/O del chiamante.
[out] Buffer
Buffer per ricevere le informazioni sulla quota per il volume. Le informazioni sulla quota vengono formattate come una o più strutture FILE_QUOTA_INFORMATION . Il campo NextEntryOffset nella struttura FILE_QUOTA_INFORMATION contiene l'offset, in byte, della voce di quota successiva nell'elenco. Se non sono presenti più voci dopo quella corrente, questo membro è zero.
[in] Length
Lunghezza in byte del buffer.
[in] ReturnSingleEntry
Valore booleano che indica se deve essere restituita solo una singola voce anziché riempire il buffer con il maggior numero possibile di voci.
[in, optional] SidList
Elenco facoltativo di SID le cui informazioni sulla quota devono essere restituite. Ogni voce nell'elenco è una struttura FILE_GET_QUOTA_INFORMATION . Il campo NextEntryOffset nella struttura FILE_GET_QUOTA_INFORMATION contiene l'offset, in byte, della voce di quota successiva nell'elenco. Se non sono presenti più voci dopo quella corrente, questo membro è zero.
[in] SidListLength
Lunghezza in byte dell'elenco SID , se è stata specificata.
[in, optional] StartSid
Puntatore facoltativo al SID della voce in cui iniziare a analizzare le informazioni sulla quota. Questo parametro deve essere impostato se le informazioni restituite devono iniziare con una voce diversa dal primo SID. Questo parametro viene ignorato se viene specificato un parametro SidList .
[in] RestartScan
Valore booleano che indica se l'analisi delle informazioni sulla quota deve essere riavviata dall'inizio. Impostare questo parametro su TRUE se l'analisi delle informazioni sulla quota deve iniziare alla prima voce nell'elenco delle informazioni sulle quote del volume. Impostare su FALSE se si riprende l'analisi da una chiamata precedente a NtQueryQuotaInformationFile. Il chiamante deve impostare questo parametro su TRUE quando si chiama NtQueryQuotaInformationFile per la prima volta.
Valore restituito
La routine NtQueryQuotaInformationFile restituisce STATUS_SUCCESS se almeno una struttura FILE_QUOTA_INFORMATION viene restituita nel parametro Buffer o un valore NTSTATUS appropriato, ad esempio uno dei seguenti:
Codice restituito | Descrizione |
---|---|
STATUS_INSUFFICIENT_RESOURCES | Per completare l'operazione sono state eseguite risorse insufficienti. Si tratta di un codice di errore. |
STATUS_INVALID_DEVICE_REQUEST | Le quote non sono abilitate nel volume. Si tratta di un codice di errore. |
STATUS_INVALID_SID | Il parametro StartSid non contiene un SID valido. Si tratta di un codice di errore. |
STATUS_QUOTA_LIST_INCONSISTENT | Il parametro SidList non contiene un elenco valido e corretto. Si tratta di un codice di errore. |
Commenti
La quantità di informazioni restituite da NtQueryQuotaInformationFile è basata sulle dimensioni delle informazioni sulle quote associate al volume, sulle dimensioni del buffer e sul fatto che sia stato richiesto un set specifico di voci.
Una chiamata a NtQueryQuotaInformationFile comporterà l'invio di una richiesta di IRP_MJ_SET_QUOTA all'oggetto dispositivo associato all'oggetto file il cui handle viene archiviato nel parametro FileHandle .
Se il file system sottostante non supporta le informazioni sulle quote (file system FAT e CDFS, ad esempio), NtQueryQuotaInformationFile non restituirà STATUS_INVALID_DEVICE_REQUEST.
Nota
Se la chiamata alla funzione NtQueryQuotaInformationFile si verifica in modalità kernel, è necessario usare il nome "ZwQueryQuotaInformationFile" anziché "NtQueryQuotaInformationFile".
Per le chiamate dai driver in modalità kernel, le versioni NtXxx e ZwXxx di una routine di Windows Native System Services possono comportarsi in modo diverso nel modo in cui gestiscono e interpretano i parametri di input. Per altre informazioni sulla relazione tra le versioni NtXxx e ZwXxx di una routine, vedere Uso di nt e zw versioni delle routine di Servizi di sistema nativo.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 7 |
Piattaforma di destinazione | Universale |
Intestazione | ntifs.h (include Ntifs.h, FltKernel.h) |
Libreria | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL |
Regole di conformità DDI | HwStorPortProhibitedDDIs, PowerIrpDDis |
Vedi anche
Uso di nt e zw versioni delle routine di Servizi di sistema nativo