ado如何处理网络中断,服务器关闭等异常?

pcfans007 2008-12-20 11:12:20
不想在假死的状态等待半分多钟,再给出个大红叉!

问了好久了,没解决,只能再问!
...全文
315 21 打赏 收藏 转发到动态 举报
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
tjg5202 2008-12-31
  • 打赏
  • 举报
回复
也遇到过这个问题。。。期待解决方案。。。。。
freehaifeng 2008-12-30
  • 打赏
  • 举报
回复
其实我觉得,这样的思路该是很多的。
我用了的方式是。
本地电脑远程取服务器时间,按秒的,这样,既可以做个不让人讨厌的认为是多余的东西,现实在状态栏里。如果有一秒取不到远程时间,就消息发出,比如......提示并将查询按钮enabled为false.

另外的方法还可以用icmp的ping 办法,实时的,这样还可以观察下网络线路状态的一个参考。

另外还可以用共享一个文件,就一个。判断是否存在....

下个sniffer软件,扫下别人的...就知道该怎么做啦。

good luck!
wychero 2008-12-30
  • 打赏
  • 举报
回复
学习
pcfans007 2008-12-30
  • 打赏
  • 举报
回复
大家不要说PING了,我在ADOquery1.open前执行clientsocket.ip port都设好并偿试telnet,都不行


就是说,telnet成功,紧跟着adoquery1.open,都不能保证后面的能成功!,,所以PING就更别提了,,,

我就需要能捕捉这种异常,,以友好的方式告诉用户 ,具体的说有两个难题

1.adoconntion.timeout属性设置好像不管用

2,退一步说,即使让它管用了,也不能完全拦截这个异常,,因为过半分钟,,系统还是弹出个一个大红叉,SB大红叉
SDQDboy 2008-12-29
  • 打赏
  • 举报
回复
我也正在为这个问题发愁呢,顶一下
pcfans007 2008-12-29
  • 打赏
  • 举报
回复
如果程序运行中,服务器关闭,,这时程序执行了adoquery1.open;

情况就很糟糕,这种情况正是我要解决的,
zhao_yong 2008-12-26
  • 打赏
  • 举报
回复
其實樓主的問題也並不是Ado的問題,你試一下用Delphi寫一下Ping功能,後運行,如果是把網卡禁用,可以馬上Time out,但是如果把網線拔除也會等上半分鐘才會反應過來。
ajiwuweibin 2008-12-25
  • 打赏
  • 举报
回复
三层的这些更是个问题啊,不过不好解决。
ZuoBaoquan 2008-12-25
  • 打赏
  • 举报
回复
@de410
谢谢!正在不断完善当中。
de410 2008-12-25
  • 打赏
  • 举报
回复
看了楼上的演示,很不错~~
ZuoBaoquan 2008-12-25
  • 打赏
  • 举报
回复
嗯,这个问题比较头痛,有时会碰到,Connection就一直在哪里报错...

我试试看,能解决的话,直接加到Connection Manager组件里面去。

P.S. 数据库连接配置管理组件(Full Source)
http://topic.csdn.net/u/20081225/16/30fd195b-a925-4403-ba4e-dd39e3013ffc.html?seed=801559707
IDWB 2008-12-21
  • 打赏
  • 举报
回复
一个连接如果没有操作的话是不会使用网络的,因此如果要判断是否断线的话只能定时的访问网络上的数据库(比如得到服务器时间等信息),一旦失败说明网络断开了
pcfans007 2008-12-21
  • 打赏
  • 举报
回复
..?
wap21 2008-12-20
  • 打赏
  • 举报
回复
友情up
pcfans007 2008-12-20
  • 打赏
  • 举报
回复
不知道你们试验过没有,比如没插网线的话,timeout根本就不起作用的,哪握你设置3秒,仍旧是等半分多,再出大红叉!
pcfans007 2008-12-20
  • 打赏
  • 举报
回复
上次有个朋友说application event能捕捉,试验结果和try except一样,不行!
kampan 2008-12-20
  • 打赏
  • 举报
回复
判断是否超时吧
pcfans007 2008-12-20
  • 打赏
  • 举报
回复
IP

withcsharp 2008-12-20
  • 打赏
  • 举报
回复
你的 ado连接是用的 名服务器名字 还是 ip
pcfans007 2008-12-20
  • 打赏
  • 举报
回复
网络断了,你的查询异常是没机会响应的
加载更多回复(1)

2,497

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧