社区
Windows SDK/API
帖子详情
怎么检测进程中某一程序是否运行?
天河落落
2012-04-06 01:17:52
怎么检测进程中某一程序是否运行?比如打开某一exe程序的时候,检查已经运行的话就不再打开了。
...全文
637
9
打赏
收藏
怎么检测进程中某一程序是否运行?
怎么检测进程中某一程序是否运行?比如打开某一exe程序的时候,检查已经运行的话就不再打开了。
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
aranjuze
2012-05-10
打赏
举报
回复
在你的 项目.cpp文件中加入如下代码
//====利用互斥,防止多个程序运行====
HANDLE hMutex=CreateMutex(NULL,TRUE,"WeightManager"); //进程中的名称
if(hMutex==NULL||GetLastError() == ERROR_ALREADY_EXISTS)
{
ShowMessage("稽核票管理软件已经运行.");
CloseHandle(hMutex);
return false;
}
cczlp
2012-05-08
打赏
举报
回复
如果列举的是其他进程, 没有绝对准确的方法, 进程运行后是可以改程序的名字的, 还可以直接从内存运行, 还可以套用其他进程外壳.
CandPointer
2012-05-07
打赏
举报
回复
命令。
tasklist /fi Imagename eq "some.exe"
进程单例?
创建 mutex 对象。
windows 核心编程,第三章?
我不懂电脑
2012-05-07
打赏
举报
回复
可以列举当前系统所有进程,BCB6自带了一个例子,手头没有BCB不记得名字了,自己找一下吧。
CCED136
2012-05-07
打赏
举报
回复
楼主到底是检测程序自身是否第一次运行, 还是检测其他程序是否在运行?
如果是检测程序自身是否运行, 就用具有名字的互斥或者事件都行, Mutex or Event , 这两个东西都简单, 看看 MSDN 就能搞定。
如果是检测其他程序是否运行, 那就只有列举当前系统所有进程的方式了, 列举的方法有快照(CreateToolhelp32Snapshot),PSAPI 等, 这个方法也很多。
ccrun.com
2012-05-07
打赏
举报
回复
光检测文件名是不严谨的,应该比对完全路径,因为同名的EXE很多。
欧阳帆54
2012-04-08
打赏
举报
回复
查看任务管理器有没有运行这个程序啊
对牛乱弹琴
2012-04-08
打赏
举报
回复
互斥吧,我见过这个用法,不过忘了怎么用了,很简单
mgsg
2012-04-06
打赏
举报
回复
String strFileName;
char szBuf[256];
bool bFound(false);
::PROCESSENTRY32 pe32 = {sizeof(pe32)};
HANDLE hSnapShot = ::CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
if (hSnapShot == NULL)
return bFound;
try
{
bool bFlag = ::Process32First(hSnapShot, &pe32);
while (bFlag)
{
strFileName = String(pe32.szExeFile);
if (strFileName.Pos("\\") != 0)
strFileName = ExtractFileName(strFileName);
if (SameText(strFileName, strExeFile))
{
bFound = true;
break;
}
bFlag = ::Process32Next(hSnapShot, &pe32);
}
}
__finally
{
::CloseHandle(hSnapShot);
}
return bFound;
xshell如何查看一个
进程
是卡死了还是正在
运行
?
请注意,以上方法提供了一些常用的手段来观察
进程
的状态,但并不能确切判断一个
进程
是否
卡死或正在
运行
。可以结合多个方法一起使用,进一步分析
进程
的活动情况和资源使用状况。如果你遇到特定的
进程
问题,可能需要更进一步的跟踪和调试,例如使用调试工具来分析
进程
的堆栈信息和调用链路。在 Xshell
中
,你可以使用一些命令和工具来查看一个
进程
是卡死了还是正在
运行
。
Java实现
检测
本地指定路径下某一个
程序
是否
在
运行
项目有一个需求需要通过网页超链接唤醒本地桌面
程序
,有一个小bug是重复打开桌面
程序
。需要后台开一个接口来判断本地桌面
程序
是否
打开。可以通过以下简单的方法来实现。要
检测
本地指定路径下某一个
程序
是否
在
运行
,可以使用Java的ProcessBuilder类来实现。然后遍历获取到的
程序
列表,判断
是否
包含要
检测
的
程序
名,如果包含则表示该
程序
正在
运行
。来执行操作系统命令来获取
运行
中
的
程序
列表。在Windows系统
中
,使用。在非Windows系统
中
,使用。变量的值,使其指向要
检测
的
程序
路径。
c#
中
怎样判断一个
程序
是否
正在
运行
?
c#
中
怎样判断一个
程序
是否
正在
运行
? 我写了两个
程序
,其
中
程序
2想判断
程序
1
是否
正在
运行
(这两个
程序
没有任何联系) 谢谢啊 if(System.Diagnostics.Process.GetProcessesByName("要获取的
程序
在
进程
中
的称").ToList().Count>0) { //存在 } else { //不存在 } st...
C#
检测
进程
是否
运行
1.通过
进程
检测
程序
if (System.Diagnostics.Process.GetProcessesByName("OA.ERP6").ToList().Count > 0) { Console.WriteLine("存在列表,不知
运行
状态"); } 2.winform
进程
检测
Application.EnableVisualStyles(); Application.SetCompatibleTextRendering
什么是
进程
?
进程
具有哪些主要特性? 比较
进程
与
程序
之间相同点与不同点
进程
是具有一定独立功能的
程序
关于一个数据集合的一次
运行
活动。
进程
具有以下主要特性: (1)并发性:可以与其它
进程
一道在宏观上同时向前推进。 (2)动态性:
进程
是执行
中
的
程序
。此外
进程
的动态性还体现在如下两个方面:首先,
进程
是动态产生、动态消亡的;其次,在
进程
的生存期内,其状态处于经常性的动态变化之
中
。 (3)独立性:
进程
是调度的基本单位,它可以获得处理机并参与并发执行。 (4)交往性:
进程
在
Windows SDK/API
1,222
社区成员
8,136
社区内容
发帖
与我相关
我的任务
Windows SDK/API
C++ Builder Windows SDK/API
复制链接
扫一扫
分享
社区描述
C++ Builder Windows SDK/API
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章