C语言实现Windows平台任务管理器指标的例子
时间: 2023-08-19 09:13:39 浏览: 135
c语言做的一个任务管理器源码.zip
以下是一个简单的C语言程序,可以在Windows平台上获取任务管理器指标:
```c
#include <windows.h>
#include <stdio.h>
int main() {
DWORD pid = GetCurrentProcessId();
HANDLE hProcess = OpenProcess(PROCESS_QUERY_INFORMATION | PROCESS_VM_READ, FALSE, pid);
PROCESS_MEMORY_COUNTERS_EX pmc;
if (GetProcessMemoryInfo(hProcess, (PROCESS_MEMORY_COUNTERS*)&pmc, sizeof(pmc))) {
printf("Working Set: %lld bytes\n", pmc.WorkingSetSize);
printf("Private Bytes: %lld bytes\n", pmc.PrivateUsage);
}
else {
printf("Error: %d\n", GetLastError());
}
CloseHandle(hProcess);
return 0;
}
```
该程序使用了Windows API函数 `GetProcessMemoryInfo` 来获取当前进程的内存使用情况。运行该程序后,将输出当前进程的工作集大小(Working Set)和私有字节数(Private Bytes)。
需要注意的是,该程序需要以管理员权限运行才能获取其他进程的信息。如果要获取其他进程的信息,可以将 `pid` 参数指定为目标进程的进程ID。
阅读全文