Freigeben über


PsChargePoolQuota-Funktion (ntifs.h)

Das PsChargePoolQuota Poolkontingent des angegebenen Pooltyps für den angegebenen Prozess.

Syntax

void PsChargePoolQuota(
  [in] PEPROCESS Process,
  [in] POOL_TYPE PoolType,
  [in] ULONG_PTR Amount
);

Parameter

[in] Process

Zeigen Sie auf den Prozess, dessen Kontingent berechnet werden soll.

[in] PoolType

Typ des zu berechnenden Poolkontingents, das eine der folgenden Sein kann:

  • NonPagedPool-
  • PagedPool-
  • NonPagedPoolCacheAligned-
  • PagedPoolCacheAligned-

Die NonPagedPoolMustSucceed und NonPagedPoolCacheAlignedMustS Pooltypen sind veraltet und sollten nicht mehr verwendet werden.

[in] Amount

Die Anzahl der Bytes, die gegen das Poolkontingent für diesen Prozess berechnet werden sollen.

Rückgabewert

Nichts

Bemerkungen

Wenn für den Prozess nicht genügend Kontingent vorhanden ist, wird das Kontingent nicht berechnet, und PsChargePoolQuota löst eine Ausnahme mit dem Statuswert STATUS_QUOTA_EXCEEDED aus. Anrufer sind für die Behandlung dieser Ausnahme verantwortlich. Daher müssen Aufrufe an PsChargePoolQuota- innerhalb eines vom Treiber bereitgestellten Ausnahmehandlers eingeschlossen werden.

Jeder erfolgreiche Aufruf von PsChargePoolQuota muss mit einem nachfolgenden Aufruf von PsReturnPoolQuotaabgeglichen werden.

Weitere Informationen zur Speicherverwaltung finden Sie unter Speicherverwaltung.

Anforderungen

Anforderung Wert
Zielplattform- Universal
Header- ntifs.h (einschließlich Ntifs.h)
Library NtosKrnl.lib
DLL- NtosKrnl.exe
IRQL- < DISPATCH_LEVEL

Siehe auch

PsReturnPoolQuota