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

NonPagedPoolMustSucceedNonPagedPoolCacheAlignedMustS 池类型已过时,不应再使用。

[in] Amount

要根据此过程的池配额收费的字节数。

返回值

备注

如果进程配额不足,则不收取配额费用, PsChargePoolQuota 会引发状态值STATUS_QUOTA_EXCEEDED异常。 调用方负责处理此异常。 因此,对 PsChargePoolQuota 的 调用必须包装在驱动程序提供的异常处理程序中。

每次成功调用 PsChargePoolQuota 都必须与对 PsReturnPoolQuota 的后续调用匹配。

有关内存管理的详细信息,请参阅 内存管理

要求

要求
目标平台 通用
标头 ntifs.h (包括 Ntifs.h)
Library NtosKrnl.lib
DLL NtosKrnl.exe
IRQL < DISPATCH_LEVEL

另请参阅

PsReturnPoolQuota