PC取指定进程使用率
PC取指定进程使用率<火山程序 类型 = "通常" 版本 = 1 />
方法 取指定进程使用率 <公开 静态 类型 = Psapi结构 注释 = "使用率需自己计算" 注释 = "只返回数据" 折叠 折叠2
@视窗.外部头文件 = "<AclAPI.h>\r\n<TlHelp32.h>\r\n<Psapi.h>\r<iostream>"
@视窗.外部库 = "AdvAPI32.Lib\r\nPsapi.lib" @禁止流程检查 = 真>
参数 进程句柄 <类型 = 变整数 注释 = "默认取自身" @默认值 = 0>
{
@ HANDLE hProcess;
如果 (进程句柄 == 0)
{
@ hProcess = ::GetCurrentProcess();
}
否则
{
@ hProcess = (HANDLE)@<进程句柄>;
}
@ PROCESS_MEMORY_COUNTERS_EX pmc;
@ GetProcessMemoryInfo(hProcess,(PROCESS_MEMORY_COUNTERS*)&pmc, sizeof(pmc));
变量 Psapi结构 <类型 = Psapi结构>
@ @<Psapi结构.结构大小>=pmc.cb;
@ @<Psapi结构.页错误数量>=pmc.PageFaultCount;
@ @<Psapi结构.最高工作设置大小>=pmc.PeakWorkingSetSize;
@ @<Psapi结构.当前工作设置大小>=pmc.WorkingSetSize;
@ @<Psapi结构.最高页使用>=pmc.QuotaPeakPagedPoolUsage;
@ @<Psapi结构.当前页使用>=pmc.QuotaPagedPoolUsage;
@ @<Psapi结构.最高非页使用>=pmc.QuotaPeakNonPagedPoolUsage;
@ @<Psapi结构.当前非页使用>=pmc.QuotaNonPagedPoolUsage;
@ @<Psapi结构.页文件使用>=pmc.PagefileUsage;
@ @<Psapi结构.最高页文件使用>=pmc.PeakPagefileUsage;
返回 (Psapi结构)
}
<火山程序 类型 = "通常" 版本 = 1 />
类 Psapi结构 <公开 折叠 @视窗.结构类 = 0>
{
变量 结构大小 <公开 类型 = 整数>
变量 页错误数量 <公开 类型 = 长整数>
变量 最高工作设置大小 <公开 类型 = 长整数>
变量 当前工作设置大小 <公开 类型 = 长整数>
变量 最高页使用 <公开 类型 = 长整数>
变量 当前页使用 <公开 类型 = 长整数>
变量 最高非页使用 <公开 类型 = 长整数>
变量 当前非页使用 <公开 类型 = 长整数>
变量 页文件使用 <公开 类型 = 长整数>
变量 最高页文件使用 <公开 类型 = 长整数>
#
}
页:
[1]