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; }