以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 数据源连接的问题 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=62824) |
-- 作者:HappyFt -- 发布时间:2015/1/8 15:43:00 -- 数据源连接的问题 在BeforeConnectOuterDataSource写了判断网络是否能连接上的代码: If TryConnectHost(db_IP) Then
经常都要打开系统3次才能登陆,网络是正常的,是否是默认的连接判断时间太短了,tryconnectHost和 network.ping的默认的时间是多少秒连接不上就会往下执行? 如果用If Network.Ping(db_IP,5000) = False Then的话,如果网络比较顺畅也要等5秒,有点浪费时间,怎么样判断地能实现如果网络立刻连通就直接执行后面的代码,不要等5秒,如果5秒后还连接不上才提示?
谢谢! |
-- 作者:Bin -- 发布时间:2015/1/8 15:46:00 -- If Network.Ping(db_IP,500) = False Then |
-- 作者:HappyFt -- 发布时间:2015/1/8 16:02:00 -- 我现在这样写 If Network.Ping(db_IP) = False Then 系统是按多少时间来判断的叱?如果按BIN老师那样才0.5秒会不会和我现在一样,当网络可以连接只是可能连接的要慢点时就会提示并退出了。 |
-- 作者:Bin -- 发布时间:2015/1/8 16:07:00 -- 默认是500 毫秒也就是0.5秒. |
-- 作者:Bin -- 发布时间:2015/1/8 16:07:00 -- 你自己可以设置合适的时间 |
-- 作者:有点甜 -- 发布时间:2015/1/8 16:18:00 -- 你连续ping几次不就好了?只要ping通一次,结束循环。 |
-- 作者:HappyFt -- 发布时间:2015/1/8 16:32:00 -- 谢谢!那这个有没有时间限制叱?还是0.5秒吗? If TryConnectHost(db_IP) Then 。。。 End If
|
-- 作者:有点甜 -- 发布时间:2015/1/8 16:33:00 -- 没有。 |
-- 作者:HappyFt -- 发布时间:2015/1/8 16:43:00 -- 那就这样写了,是不是? If TryConnectHost(db_IP) Then Syscmd.Project.Exit(False) \'退出系统 return
还有个问题为什么如果没连接上退出时桌面上还会显示“正在打开文件”的文字也要几秒才消失。退出时要怎么才能禁止运行后面的代码,上面return好象不起作用
|
-- 作者:有点甜 -- 发布时间:2015/1/8 16:55:00 -- return 改成 e.Cancel = true,这一句不需要 Syscmd.Project.Exit(False) \'退出系统
代码写到BeforeOpenProject事件 |