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


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

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

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


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

这个代码很有效,能否再增加一句.

提示完程序只能打开一次后,关门当前正在打开的程序.然后弹出已经打开程序(全屏)

 


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


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

上述代码很有效,但仍有不足之处.
能否增加一条,弹出提示窗口后关闭正在打开的程序窗口,并弹出已经打开的程序.


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


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

你可以在代码后面加上

AppActivate("foxtable")

但是如果有多个不同的 foxtable项目的话,不能保证打开正确的


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


加好友 发短信
等级:小狐 帖子:339 积分:3760 威望:0 精华:0 注册:2017/9/7 15:20:00
  发帖心情 Post By:2019/5/3 0:40: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编辑过]

现我使用怎么报错啊?报错如下,求帮助! 
代码是放在BeforeOpenProject事件中的,但:
 
错误所在事件:项目,AfterOpenProject 
详细错误信息: “UserCode”的类型初始值设定项引发异常。 
未将对象引用设置到对象的实例。
[此贴子已经被作者于2019/5/3 0:42:07编辑过]

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/5/4 10:19:00 [只看该作者]

 

贴出你 AfterOpenProject 事件的代码。学会调试,如

 

http://www.foxtable.com/webhelp/scr/1485.htm

 

 

 

 


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


加好友 发短信
等级:幼狐 帖子:103 积分:1161 威望:0 精华:0 注册:2010/6/14 15:09:00
  发帖心情 Post By:2020/2/11 18:04:00 [只看该作者]

上述代码执行后为何 MessageBox.Show("只能打开一次!") 对话框在

Windows 的任务栏里 不能直接显示吗





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