标签:
代码如下:
/***************************************************/ /* 函数: 遍历进程信息 /* 参数:进程名称 例如: aaa.exe /* 返回: 无 /* 创建人: 日期 内容 /* 金胖胖 2015年2月26日 新建 /***************************************************/ void CUIConsoleDlg::GetAllProcessInfo(char* szExeFile) { char szprid[MAX_PATH]; memset(szprid,0,MAX_PATH); HANDLE hSnap = NULL; PROCESSENTRY32 pe = { sizeof(PROCESSENTRY32) }; hSnap = ::CreateToolhelp32Snapshot( TH32CS_SNAPPROCESS, 0 ); //创建快照 if( INVALID_HANDLE_VALUE == hSnap ) { AfxMessageBox("创建快照失败"); } if (!::Process32First(hSnap,&pe)) { ::CloseHandle( hSnap ); AfxMessageBox("Process32First error"); } do { if (!strcmp(szExeFile,pe.szExeFile)) { // 此处有用的为 进程名 // pe.th32ProcessID 进程ID // pe.szExeFile 进程名 // 可以添加一些处理 } } while (::Process32Next(hSnap, &pe)); ::CloseHandle( hSnap ); }
另外可以通过进程ID得到进程句柄
HANDLE hProcess = OpenProcess(PROCESS_ALL_ACCESS, FALSE, pe.th32ProcessID);
标签:
原文地址:http://www.cnblogs.com/-jpp/p/4300509.html