Foxtable(狐表)用户栏目专家坐堂 → [求助] 计划管理里的代码提示超时已过期


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

主题:[求助] 计划管理里的代码提示超时已过期

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


加好友 发短信
等级:三尾狐 帖子:632 积分:7217 威望:0 精华:1 注册:2013/11/26 7:49:00
  发帖心情 Post By:2014/4/11 11:37:00 [只看该作者]

为什么网络正常的时候,程序都能正常运行,但网络中断后,程序就像死掉一样

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


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

以下是引用bobolan521在2014-4-11 11:37:00的发言:
为什么网络正常的时候,程序都能正常运行,但网络中断后,程序就像死掉一样

 

因为尝试去连接数据库了,一般是45秒。

 

你设置一个超时时间吧,这样最多等这个时间就成。看10楼的代码。

[此贴子已经被作者于2014-4-11 11:43:26编辑过]

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


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

你tryconnet之前,最好检测一下网络是否正常,参考

 

http://www.foxtable.com/help/topics/2709.htm

 


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


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

如果会点vb.net话,可以另外开线程来执行这个判断。

 

不过,网络偶尔断一下,忍一下就行了,正常的网络,好多天都不会断一次的。

如果经常断,改代码也没有意义,应该先解决网络的问题。

 

 


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


加好友 发短信
等级:三尾狐 帖子:632 积分:7217 威望:0 精华:1 注册:2013/11/26 7:49:00
  发帖心情 Post By:2014/4/11 12:19:00 [只看该作者]

狐狸爸爸,我测试了一下,你刚才的这段代码,用了80秒左右才判断出来连不了。为什么不是10秒钟

If Connections.Tryconnect("Provider=SQLOLEDB;Password=1UmeLz2Qy4KX;Persist Security Info=True;User ID=OpenMas8020005;Initial Catalog=OpenMas;Data Source=111.1.2.106,1433\SQLEXPRESS;Connect Timeout = 3;") =False Then
Output.Show("连不上")
Else
Output.Show("连上了")
End If

[此贴子已经被作者于2014-4-11 12:25:46编辑过]

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


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

以下是引用bobolan521在2014-4-11 12:19:00的发言:

狐狸爸爸,我测试了一下,你刚才的这段代码,用了80秒左右才判断出来连不了。为什么不是10秒钟

 

看13楼,先ping一下,再try

 

If TryConnectHost("www.egridsoft.com") Then
    If
Network.Ping("www.egridsoft.com") Then
       
Messagebox.Show("可以访问易表主页")
    End If
End If


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


加好友 发短信
等级:三尾狐 帖子:655 积分:7707 威望:0 精华:0 注册:2013/12/11 17:49:00
  发帖心情 Post By:2014/4/11 12:46:00 [只看该作者]

是先PING还是TRY??是不是写反了?


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


加好友 发短信
等级:三尾狐 帖子:632 积分:7217 威望:0 精华:1 注册:2013/11/26 7:49:00
  发帖心情 Post By:2014/4/11 12:49:00 [只看该作者]

If Network.Ping("111.1.2.106:1433") Then
        Messagebox.Show("可以访问")
 Else
Messagebox.Show("不可以访问")
End If

如果网络通,可以马上弹出可以访问,但网络断时,没有弹出不可以访问,弹出了以下画面


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


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

 我的意思是,你ping百度,确定可以联网,再尝试连接数据库。

 

 如果你的数据库服务器不允许ping的话,就不能直接ping这个ip地址的

 

If Network.Ping(www.baidu.com) Then
        Messagebox.Show("可以访问")
 Else
Messagebox.Show("不可以访问")


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


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


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