求教怎样在获得一个Windows下进程的状态信息? 是一个进程,如果能获得它当前的CPU,Memory,磁盘使用等信息?希望有原码观摩。请各位高手多多帮忙。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 CreateToolhelp32Snapshot()函数创建系统快照,根据这个快照调用函数Process32First()和Process32Next()来获得进程中的各模块,各线程的信息,示例代码如下:HANDLE hProcessSnap = NULL; PROCESSENTRY32 pe32 = {0}; FILETIME CreateTime,ExitTime,KernelTime,UserTime;LARGE_INTEGER l_Createtime,l_Exittime,l_Usertime,l_Kerneltime;CString s_priority,s_processID,s_threadcounts,s_exename,s_kerneltime,s_usertime; hProcessSnap = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);pe32.dwSize = sizeof(PROCESSENTRY32); if (Process32First(hProcessSnap, &pe32)) {do { HANDLE hProcess; hProcess = OpenProcess (PROCESS_ALL_ACCESS, FALSE, pe32.th32ProcessID); if(hProcess!=NULL){ GetProcessTimes(hProcess,&CreateTime,&ExitTime,&KernelTime,&UserTime); memcpy(&l_Kerneltime.QuadPart,&KernelTime.dwLowDateTime,2*sizeof(DWORD)); memcpy(&l_Usertime.QuadPart,&UserTime.dwLowDateTime,2*sizeof(DWORD)); s_kerneltime.Format("%6d s",_int64((_int64(l_Kerneltime.QuadPart)+_int64(l_Usertime.QuadPart))/10000000)); s_processID.Format("%d",pe32.th32ProcessID); s_threadcounts.Format("%d",pe32.cntThreads); s_exename.Format("%s",pe32.szExeFile);}} while (Process32Next(hProcessSnap, &pe32)); } 如何使WebBrowser控件与本地应用程序通信 传输文件 如何用VC++进行MPEG1/2的半解码 新手求教,刷新Edit Box控件的显示导致CPU占用达到100% 请问如何在Word中插入图片? 控制台程序中能使用OLE自动化服务程序吗? 这段代码能上传文件到服务器吗? 关于DrawText的一个问题 如何使用VC判断带宽(极难) http://www.csdn.net/expert/topic/609/609742.xml?temp=.5661432 GetDlgItem() CEdit中如何知道光标的位置
PROCESSENTRY32 pe32 = {0};
FILETIME CreateTime,ExitTime,KernelTime,UserTime;
LARGE_INTEGER l_Createtime,l_Exittime,l_Usertime,l_Kerneltime;
CString s_priority,s_processID,s_threadcounts,s_exename,s_kerneltime,s_usertime;
hProcessSnap = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
pe32.dwSize = sizeof(PROCESSENTRY32);
if (Process32First(hProcessSnap, &pe32))
{
do
{
HANDLE hProcess;
hProcess = OpenProcess (PROCESS_ALL_ACCESS, FALSE, pe32.th32ProcessID);
if(hProcess!=NULL)
{
GetProcessTimes(hProcess,&CreateTime,&ExitTime,&KernelTime,&UserTime);
memcpy(&l_Kerneltime.QuadPart,&KernelTime.dwLowDateTime,2*sizeof(DWORD));
memcpy(&l_Usertime.QuadPart,&UserTime.dwLowDateTime,2*sizeof(DWORD));
s_kerneltime.Format("%6d s",_int64((_int64(l_Kerneltime.QuadPart)+_int64(l_Usertime.QuadPart))/10000000));
s_processID.Format("%d",pe32.th32ProcessID);
s_threadcounts.Format("%d",pe32.cntThreads);
s_exename.Format("%s",pe32.szExeFile);
}
}
while (Process32Next(hProcessSnap, &pe32)); }