VB编的程序中如何知道该程序已经运行,防止重复运行

slf 2000-07-11 12:26:00
本人用VB编的一个程序,想只能运行一个,再次运行时提示已经运行了该程序,VB中应该
能够实现吧,哪位帮忙,谢了先!
...全文
310 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
pgfan 2000-12-20
  • 打赏
  • 举报
回复
但是上述方法都有这样那样的缺点,如:
1查找窗口法、枚举窗口法:如果应用程序无窗口、窗口名动态变化或窗口名相同而程序不同,则判断会出现问题;
2、文件标识法:如果程序在运行时出现非常操作,或突然系统Down了,则也会出现判断错误的问题呀!
有人说用CreateMutex 函数用互斥法或者CreateFileMapping函数内存映射法,但是这些方法都有一个不足之处:那就是怎样找到已经运行的实例中某个窗口的句柄啊?我要向这个窗口发送消息的呀!
weity 2000-07-11
  • 打赏
  • 举报
回复
mafangsan这么做可以
最好在
main()启动模块中应用
mafangsan 2000-07-11
  • 打赏
  • 举报
回复
Private Sub Form_Load()
If App.PrevInstance = True Then End
End Sub
haihong 2000-07-11
  • 打赏
  • 举报
回复
用api findwindow 也可以判断
WHQ 2000-07-11
  • 打赏
  • 举报
回复
用事件、旗语、信号量之类

7,762

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧