PsChargePoolQuota 関数 (ntifs.h)

PsChargePoolQuota ルーチンは、指定したプールの種類のプール クォータを指定されたプロセスに課金します。

構文

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

パラメーター

[in] Process

クォータが課金されるプロセスへのポインター。

[in] PoolType

課金するプール クォータの種類。次のいずれかになります。

  • NonPagedPool
  • PagedPool
  • NonPagedPoolCacheAligned
  • PagedPoolCacheAligned

NonPagedPoolMustSucceed および NonPagedPoolCacheAlignedMustS プールの種類は古く、使用しないでください。

[in] Amount

このプロセスのプール クォータに対して課金されるバイト数。

戻り値

なし

解説

プロセスに不十分なクォータが存在する場合、クォータは課金されず、 PsChargePoolQuota は 状態値STATUS_QUOTA_EXCEEDEDで例外を発生させます。 呼び出し元は、この例外を処理する責任があります。 したがって、 PsChargePoolQuota の呼び出しは、ドライバー提供の例外ハンドラー内でラップする必要があります。

PsChargePoolQuota を正常に呼び出すたびに、PsReturnPoolQuota の後続の呼び出しと一致する必要があります。

メモリ管理の詳細については、「メモリ 管理」を参照してください。

要件

要件
対象プラットフォーム ユニバーサル
Header ntifs.h (Ntifs.h を含む)
Library NtosKrnl.lib
[DLL] NtosKrnl.exe
IRQL < DISPATCH_LEVEL

こちらもご覧ください

PsReturnPoolQuota