H hstod Unregistered / Unconfirmed GUEST, unregistred user! 2003-08-22 #1 在application中要与元程数据库进行数据交换怎样判断网络是连通还是断线了?一断线就通知 请高手指点一二!
W wangbing9802 Unregistered / Unconfirmed GUEST, unregistred user! 2003-08-25 #7 开个线程,固定时间ping远程的机子不就行了!
H hstod Unregistered / Unconfirmed GUEST, unregistred user! 2003-08-25 #8 to wangbing9802谢谢了 如果客户端太多了会给服务器ping死、如果是客户端的系统资源紧张会不会造成机器死机? 有没有什么事件触发?(在非正常掉线时)
C chnplzh Unregistered / Unconfirmed GUEST, unregistred user! 2003-08-25 #10 这个问题已经提了很多了,思路如下: 1、定时使用网络消息发送来应答; 2、在数据操作之前,简单使用TRY ADOQUERY.OPEN EXCEPT MESSAGEBOX('ERROR!')来判断, 如出错,那网络肯定有问题,不出错,就继续操作其它数据.
这个问题已经提了很多了,思路如下: 1、定时使用网络消息发送来应答; 2、在数据操作之前,简单使用TRY ADOQUERY.OPEN EXCEPT MESSAGEBOX('ERROR!')来判断, 如出错,那网络肯定有问题,不出错,就继续操作其它数据.
H huiyue Unregistered / Unconfirmed GUEST, unregistred user! 2003-08-25 #11 不会ping死的。如果你没五分钟ping一次的话,你再多的客户端也ping不死,试试看。我曾试过用10台左右的电脑ping一台,差不多可以ping死。 至于其他的,我就不太在行了。
S seabelial Unregistered / Unconfirmed GUEST, unregistred user! 2003-08-25 #12 定义一个: FTestConn: TIdTCPClient; FTestConn := TIdTCPClient.Create(nil); FTestConn.Host := 服务器IP; FTestConn.Port := iServerPort; 然后: try bNetOK := false; FTestConn.Disconnect; FTestConn.Connect(iTimeout); FTestConn.Disconnect; bNetOK := true; Synchronize(DMMain.ConnectToDB); except on E: exception do begin bNetOK := false; WriteRunLog('不能连接服务器(' + sDBServer + ')' + E.Message); //¹Ø±ÕÊý¾Ý¿âÁ¬½Ó Synchronize(DMMain.ADOConn.Close); end; end; //等待 Sleep(1000); end; ------------ 以上代码是正在使用的,绝对可以,我是两个线程,有一个专门探测网络通断。
定义一个: FTestConn: TIdTCPClient; FTestConn := TIdTCPClient.Create(nil); FTestConn.Host := 服务器IP; FTestConn.Port := iServerPort; 然后: try bNetOK := false; FTestConn.Disconnect; FTestConn.Connect(iTimeout); FTestConn.Disconnect; bNetOK := true; Synchronize(DMMain.ConnectToDB); except on E: exception do begin bNetOK := false; WriteRunLog('不能连接服务器(' + sDBServer + ')' + E.Message); //¹Ø±ÕÊý¾Ý¿âÁ¬½Ó Synchronize(DMMain.ADOConn.Close); end; end; //等待 Sleep(1000); end; ------------ 以上代码是正在使用的,绝对可以,我是两个线程,有一个专门探测网络通断。