Foxtable(狐表)用户栏目专家坐堂 → 如何防止程序重复打开?


  共有13993人关注过本帖树形打印复制链接

主题:如何防止程序重复打开?

帅哥哟,离线,有人找我吗?
qhczy
  1楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:274 积分:2451 威望:0 精华:1 注册:2010/9/14 13:18:00
如何防止程序重复打开?  发帖心情 Post By:2011/4/21 16:35:00 [只看该作者]

检测进程有没有名,有就弹出提示。

 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47448 积分:251048 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2011/4/21 16:51:00 [只看该作者]

foxtable没有提供此功能

 回到顶部
帅哥哟,离线,有人找我吗?
qhczy
  3楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:274 积分:2451 威望:0 精华:1 注册:2010/9/14 13:18:00
  发帖心情 Post By:2011/4/21 17:11:00 [只看该作者]

能增加这个功能吗?

 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47448 积分:251048 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2011/4/21 17:18:00 [只看该作者]

你可以自己写一个,禁止打开同一个项目,在AfterOpenProject事件中在项目文件目录下生成一个文件,在BeforeCloseProject事件中删除这个文件。

在BeforeOpenProject检测这个文件,如果存在这个文件,说明有人打开了此项目,那么就禁止重复打开。


 回到顶部
帅哥哟,离线,有人找我吗?
lxl
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:858 积分:6071 威望:0 精华:19 注册:2008/9/1 9:13:00
  发帖心情 Post By:2011/4/21 20:07:00 [只看该作者]

写文件有风险。非法关闭,或者任务管理器里面关闭,文件没删除的话,就再打不开项目了

 

可以用下面代码实现

全局代码:

Public mu As System.Threading.Mutex

 

BeforeOpenProject事件:

Dim sucess As Boolean = False
mu = new System.Threading.Mutex(True, "dsdfhdfghf", sucess)
If not sucess Then
    MessageBox.Show("只能打开一次!")
    e.Cancel = True
End If

[此贴子已经被作者于2011-4-21 20:07:40编辑过]

[本帖被加为精华]
 回到顶部
帅哥哟,离线,有人找我吗?
blackzhu
  6楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:狐仙 帖子:9875 积分:57584 威望:0 精华:15 注册:2008/9/1 9:45:00
  发帖心情 Post By:2011/4/21 20:31:00 [只看该作者]

代码明天收藏下来

 回到顶部
帅哥哟,离线,有人找我吗?
古奇
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:177 积分:1571 威望:0 精华:0 注册:2008/9/1 22:25:00
  发帖心情 Post By:2011/4/21 20:39:00 [只看该作者]

以下是引用lxl在2011-4-21 20:07:00的发言:

写文件有风险。非法关闭,或者任务管理器里面关闭,文件没删除的话,就再打不开项目了

 

可以用下面代码实现

全局代码:

Public mu As System.Threading.Mutex

 

BeforeOpenProject事件:

Dim sucess As Boolean = False
mu = new System.Threading.Mutex(True, "dsdfhdfghf", sucess)
If not sucess Then
    MessageBox.Show("只能打开一次!")
    e.Cancel = True
End If

[此贴子已经被作者于2011-4-21 20:07:40编辑过]

 

顶啊   代码有效 图片点击可在新窗口打开查看


 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47448 积分:251048 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2011/4/22 7:12:00 [只看该作者]

写lxl版主,学习了,加精。

 回到顶部
帅哥哟,离线,有人找我吗?
kylin
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 F6
等级:狐精 帖子:3030 积分:19188 威望:0 精华:2 注册:2008/9/1 7:50:00
  发帖心情 Post By:2011/4/22 11:33:00 [只看该作者]

以下是引用lxl在2011-4-21 20:07:00的发言:

写文件有风险。非法关闭,或者任务管理器里面关闭,文件没删除的话,就再打不开项目了

 

可以用下面代码实现

全局代码:

Public mu As System.Threading.Mutex

 

BeforeOpenProject事件:

Dim sucess As Boolean = False
mu = new System.Threading.Mutex(True, "dsdfhdfghf", sucess)
If not sucess Then
    MessageBox.Show("只能打开一次!")
    e.Cancel = True
End If

[此贴子已经被作者于2011-4-21 20:07:40编辑过]

收藏,谢谢!


 回到顶部
帅哥哟,离线,有人找我吗?
foxor
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:512 积分:4146 威望:0 精华:0 注册:2009/10/8 16:43:00
  发帖心情 Post By:2011/4/22 17:06:00 [只看该作者]

很有用,收藏了!图片点击可在新窗口打开查看


 回到顶部
总数 16 1 2 下一页