首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

为什么ADODB ConnectionTimeout设置了没效果解决方法

2012-03-27 
为什么ADODB ConnectionTimeout设置了没效果我要判断某一个服务器是否能连接,但是要控制时间,2s内如果不能

为什么ADODB ConnectionTimeout设置了没效果
我要判断某一个服务器是否能连接,但是要控制时间,2s内如果不能连接我就返回连接失败

VB code
Public Function IsServerOK() As Boolean   On Error GoTo err   Dim conn As ADODB.Connection   Set conn = New ADODB.Connection   conn.ConnectionTimeout = 2 '设置连接超时,2s内无法连接视为服务器不可用   conn.Open "Provider=SQLOLEDB.1;Persist Security Info=True;UID=sa;PWD=sa;Initial Catalog=TEST;Data Source=192.168.1.1" '连接服务器   conn.Close   Set conn = Nothing   IsServerOK= True   Exit Functionerr:   Set conn = Nothing   IsServerOK= FalseEnd Function


实际测试,无论怎么设ConnectionTimeout ,都要等30s左右才返回结果。(我记得默认是30s的)
请问这是怎么回事?有没有解决办法

[解决办法]
好像是默认时间改不了的,好多人都遇到这个问题,不知道什么原因。用别的方法来实现吧,可以多一个多线程,在主程序链接数据库之前启动一个不占用任务栏的进程,每一秒中响应一次事件,如何几秒内没有接受到链接成功的信息回复,可以认为未链接成功,提示信息。。
[解决办法]
探讨
我要判断某一个服务器是否能连接,但是要控制时间,2s内如果不能连接我就返回连接失败

VB code
Public Function IsServerOK() As Boolean
On Error GoTo err
Dim conn As ADODB.Connection
Set conn = New ADODB.Connection
conn.Connec……

热点排行