Tom.Cat
禁止发言
禁止发言
  • 注册日期2001-10-10
  • 最后登录2019-07-29
  • 粉丝1
  • 关注0
  • 积分-53792分
  • 威望197411点
  • 贡献值0点
  • 好评度5点
  • 原创分0分
  • 专家分0分
  • 社区居民
阅读:1319回复:12

如何防止程序重入啊?就是只能一个程序运行

楼主#
更多 发布于:2004-02-02 17:45
用户被禁言,该主题自动屏蔽!
lvwj
驱动老牛
驱动老牛
  • 注册日期2001-08-21
  • 最后登录2021-01-31
  • 粉丝0
  • 关注0
  • 积分13分
  • 威望181点
  • 贡献值0点
  • 好评度52点
  • 原创分0分
  • 专家分0分
  • 社区居民
沙发#
发布于:2004-02-02 17:47
指整个系统只允许运行一个程序还是说防止自身运行第二个实例?

防止自身的话,加个独立的节放个变量就可以了 (jeffry ricther 高级win32 编程)
www.bjjcz.com
Tom.Cat
禁止发言
禁止发言
  • 注册日期2001-10-10
  • 最后登录2019-07-29
  • 粉丝1
  • 关注0
  • 积分-53792分
  • 威望197411点
  • 贡献值0点
  • 好评度5点
  • 原创分0分
  • 专家分0分
  • 社区居民
板凳#
发布于:2004-02-02 17:50
用户被禁言,该主题自动屏蔽!
lvwj
驱动老牛
驱动老牛
  • 注册日期2001-08-21
  • 最后登录2021-01-31
  • 粉丝0
  • 关注0
  • 积分13分
  • 威望181点
  • 贡献值0点
  • 好评度52点
  • 原创分0分
  • 专家分0分
  • 社区居民
地板#
发布于:2004-02-02 17:53
把优先级提到最高不知行不行?
从来没试过。
www.bjjcz.com
Tom.Cat
禁止发言
禁止发言
  • 注册日期2001-10-10
  • 最后登录2019-07-29
  • 粉丝1
  • 关注0
  • 积分-53792分
  • 威望197411点
  • 贡献值0点
  • 好评度5点
  • 原创分0分
  • 专家分0分
  • 社区居民
地下室#
发布于:2004-02-02 17:56
用户被禁言,该主题自动屏蔽!
guoxh9
驱动太牛
驱动太牛
  • 注册日期2003-10-13
  • 最后登录2011-10-14
  • 粉丝0
  • 关注0
  • 积分-9分
  • 威望1点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2004-02-02 18:37
[quote]把优先级提到最高不知行不行?
从来没试过。


不是这样的,就是只允许一个程序运行而已,但第二次打开程序,自动切到原来的程序。 [/quote]
实在搞不懂你在问什么?
arthurtu
驱动巨牛
驱动巨牛
  • 注册日期2001-11-08
  • 最后登录2020-12-19
  • 粉丝0
  • 关注0
  • 积分26分
  • 威望161点
  • 贡献值0点
  • 好评度35点
  • 原创分0分
  • 专家分0分
  • 社区居民
6楼#
发布于:2004-02-02 20:21
简单,程序创建一个named mutex,如果已经有了就退出
分 :D

怕name冲突可以用guid:D
例子:
HANDLE hPre = CreateMutex(NULL, TRUE, strTmp);
// if already run a instance, or faile to create a mutex
    if ( GetLastError() == ERROR_ALREADY_EXISTS )
    {
        DbgMsgBox(NULL, _T("Already running an instance!"), _T("Error"), MB_OK);
        return 0;
    }
    if (hPre == INVALID_HANDLE_VALUE)
    {
        DbgMsgBox(NULL, _T("Create mutest failed!"), _T("Error"), MB_OK);
        return 0;
    }
Tom.Cat
禁止发言
禁止发言
  • 注册日期2001-10-10
  • 最后登录2019-07-29
  • 粉丝1
  • 关注0
  • 积分-53792分
  • 威望197411点
  • 贡献值0点
  • 好评度5点
  • 原创分0分
  • 专家分0分
  • 社区居民
7楼#
发布于:2004-02-03 09:19
用户被禁言,该主题自动屏蔽!
ququ
驱动小牛
驱动小牛
  • 注册日期2001-07-02
  • 最后登录2007-12-26
  • 粉丝0
  • 关注0
  • 积分342分
  • 威望35点
  • 贡献值0点
  • 好评度34点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2004-02-03 10:35
我记得是用FindWindow
arthurtu
驱动巨牛
驱动巨牛
  • 注册日期2001-11-08
  • 最后登录2020-12-19
  • 粉丝0
  • 关注0
  • 积分26分
  • 威望161点
  • 贡献值0点
  • 好评度35点
  • 原创分0分
  • 专家分0分
  • 社区居民
9楼#
发布于:2004-02-03 10:37
那你在退出前,FindWindow,然后ShowWindow :D :D
或sendmessage :D
fracker
驱动太牛
驱动太牛
  • 注册日期2001-06-28
  • 最后登录2021-03-30
  • 粉丝0
  • 关注0
  • 积分219分
  • 威望81点
  • 贡献值0点
  • 好评度23点
  • 原创分0分
  • 专家分1分
  • 社区居民
10楼#
发布于:2004-02-03 12:51
都没分了,还折腾啥?:D
Tom.Cat
禁止发言
禁止发言
  • 注册日期2001-10-10
  • 最后登录2019-07-29
  • 粉丝1
  • 关注0
  • 积分-53792分
  • 威望197411点
  • 贡献值0点
  • 好评度5点
  • 原创分0分
  • 专家分0分
  • 社区居民
11楼#
发布于:2004-02-03 13:22
用户被禁言,该主题自动屏蔽!
浮萍
驱动太牛
驱动太牛
  • 注册日期2002-11-08
  • 最后登录2008-05-31
  • 粉丝0
  • 关注0
  • 积分150分
  • 威望16点
  • 贡献值0点
  • 好评度11点
  • 原创分0分
  • 专家分0分
12楼#
发布于:2004-02-03 14:43
楼主,找你呢,你咋不上MSN了????
游客

返回顶部