请教如何判断一个程序是否在运行(除标题,类名,进程名,路径外的方法)!
求除了通过标题,类名,进程名,进程路径判断以外的方法。
程序a.exe 和 b.exe,都是自已写的,想用b.exe来判断a.exe是否存在。
a.exe 无标题,无类名,无固定文件名和路径,还有什么办法可以判断?
程序a.exe 和 b.exe,都是自已写的,想用b.exe来判断a.exe是否存在。
a.exe 无标题,无类名,无固定文件名和路径,还有什么办法可以判断?
作者: cnxfmz 发布时间: 2011-06-16
判断进程运行是最好的方法
其他可以通过一些进程通信的方法 不知道你有没有这个必要
比如说b和a之间加入心跳包
其他可以通过一些进程通信的方法 不知道你有没有这个必要
比如说b和a之间加入心跳包
作者: q191201771 发布时间: 2011-06-16
程序加载的时候注册一个全局的mutex,然后搜索这个mutex是否存在,就知道程序有没有运行了。
作者: fox_ocean 发布时间: 2011-06-16
帮顶,学习中。
作者: liuxingyu2008pp 发布时间: 2011-06-16
进程通讯
命令的内核对象 C/C++ code
命令的内核对象 C/C++ code
HANDLE HandleMu; HandleMu = ::CreateMutex(NULL,FALSE,"a.exe"); if(HandleMu == NULL) return FALSE; if(GetLastError() == ERROR_ALREADY_EXISTS) { AfxMessageBox( "a.exe已运行! ",MB_ICONSTOP); }
作者: downmooner 发布时间: 2011-06-16
用b程序去查找所有正在运行的进程,看是否有a.exe。部分代码如下
C/C++ code
C/C++ code
LPCTSTR pszExeFile; PROCESSENTRY32 pe; pe.dwSize=sizeof(pe); bool fok=Process32First(thProcess,&pe); for(;fok;fok=Process32Next(thProcess,&pe)) { pszExeFile=_tcsrchr(pe.szExeFile,TEXT('\\')); if(pszExeFile=="a.exe") AfxMessageBox("a.exe正在运行!"); }
作者: shaotine_wu 发布时间: 2011-06-16