您的位置:首页 > 其它

MFC中获取进程名、PID及进程所在路径

2009-06-28 19:07 465 查看
CString MyGetProcess()
{
CString csTemp = "", csPid;
HANDLE hSnapshot, mehandle;

hSnapshot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);

PROCESSENTRY32 pe;
MODULEENTRY32 me;

pe.dwSize = sizeof(PROCESSENTRY32);

Process32First(hSnapshot, &pe);

do
{
mehandle = CreateToolhelp32Snapshot(TH32CS_SNAPMODULE, pe.th32ProcessID);

me.dwSize = sizeof(MODULEENTRY32);

Module32First(mehandle, &me);

csPid.Format("%d", pe.th32ProcessID);

if (pe.th32ProcessID == 0)
{
csTemp = csTemp + pe.szExeFile + "/t" + csPid + "/tSystem" + "/r/n" ;
}
else
{
csTemp = csTemp + pe.szExeFile + "/t" + csPid + "/t" + me.szExePath + "/r/n" ;
}

CloseHandle(mehandle);

}while(Process32Next(hSnapshot, &pe));

CloseHandle(hSnapshot);

return csTemp;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: