次の方法で共有


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 への呼び出し照合する必要があります。

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

必要条件

要件 価値
ターゲット プラットフォーム 万国
ヘッダー ntifs.h (Ntifs.h を含む)
ライブラリ NtosKrnl.lib
DLL NtosKrnl.exe
IRQL < DISPATCH_LEVEL

関連項目

PsReturnPoolQuota