永发信息网

如何用c++获取某个进程

答案:2  悬赏:80  手机版
解决时间 2021-03-31 18:44
  • 提问者网友:记得曾经
  • 2021-03-31 01:15
如何用c++获取某个进程
最佳答案
  • 五星知识达人网友:玩世
  • 2021-03-31 02:19
#include
#include
#include

int GetProcessCount(const TCHAR* szExeName)
{
TCHAR sztarget[MAX_PATH];
lstrcpy(sztarget, szExeName);
CharLowerBuff(sztarget, MAX_PATH);

int count = 0;
PROCESSENTRY32 my;
HANDLE l = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
if (((int)l) != -1)
{
my.dwSize = sizeof(my);
if (Process32First(l, &my))
{
do
{
CharLowerBuff(my.szExeFile, MAX_PATH);
if (lstrcmp(sztarget, my.szExeFile) == 0)
{
count++;
}
}while (Process32Next(l, &my));
}
CloseHandle(l);
}

return count;
}

int main(int argc, char*argv[])
{
#ifdef UNICODE
if(GetProcessCount(L"abcdef.exe") > 0)
#else
if(GetProcessCount("abcdef.exe") > 0)
#endif
{
cout <<"Running!.."< }
else
{
cout<<"Not Running!.."< }
return 0;
}
全部回答
  • 1楼网友:酒安江南
  • 2021-03-31 03:58
系统中有现成的函数可以获取到进程号,如下:
#ifdef _WIN32
#include
#else
#include
#endif
int main()
{
int iPid = (int)getpid();
std::cout<<"The process id is: "< return 0;
}
有些定义为pid_t getpid(),其实pid_t的类型就是int类型,定义如下:typedef int pid_t;
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯