indy的FTP控件有timeout属性吗?(100分)

  • 主题发起人 主题发起人 kevin_gao
  • 开始时间 开始时间
K

kevin_gao

Unregistered / Unconfirmed
GUEST, unregistred user!
使用indy的ftp控件,timeout属性可以设置吗?如果ftp地址不通,我的程序会等好
半天,象死机一样。能设置timeout让等待时间短点否?
 
我看了一下,没有timeout属性。
 
我也看了,是没有。但我认为总该可以设置的吧?
 
我用的是最新版本的,在Indy主页下载,可以设置timeout属性,
比如
connect(30000);

但是这是一个测试版本,问题多多
 
ICS的FtpClient有些属性,但是鼎鼎大名的Indy居然没有这个属性,我也觉得奇怪。我看了
半天,确实好象没有设置的地方。
 
问题多多?怎么个问题多多法?

我可不想自己开发的东西上问题多多,看来真的没有办法了?
 
indy 9.0beta 中的 Idftp.ReadTimeOut 属性也许有用。
 
我也正想问这个问题,
ReadTimeOut属性只管读数据,对连接时间没有影响。
我看帮助说IdGloab.Pas中有一个
const IdTimeoutDefault = -1;控制缺省的超时,
原文如下:
IdTimeoutDefault = -1;
Indicates that the default time-out value should be used.
Description
IdTimeoutDefault is a constant Integer value that indicates the default
time-out value should be used in Indy components.
难道重新编译控件才可以改变这个值?
 
Indy9 有超时属性!!!!
我用这个写了个代理服务器测试软件.如果没有超时属性,验证代理需要自己计时,很麻麻烦!
我在 www.51delphi.com 下载的indy9
 
我用的Indy9.0.1,怎么没有啊,
你说的是ReadTimeout属性吗?
 
[:D]最新INDY 9.0.3有 TIMEOUT属性
 
请问哪里有可用的FTP例子下载?
我编译了它自带的FtpDemo程序竟然一连接就出现下面的错误信息:
"ATTENTION PLEASE *** UPLOAD QUOTA IS 6291456 BYTES PER FILE."

该信息只是说上传的文件长度不得大于6291456字节(6M),应该只是服务器的反馈信息,
可就是因为这个问题使IdFtp无法连接成功,如何解决呢?

kevin_gao:
  可否帮助解决一下这个问题,分数可以商定。其它高手也请帮帮忙!
 
麻烦看清楚,INDY 9.xx只有READTIMEOUT属性,根本不是连接超时属性
 
自己用winsock写:)
 
结束吧结束吧
 
我的办法是先用 IdIcmp(可设置超时属性) 来 Ping 一下,如果通,再用 IdFtp 联接
不过对于开机但是没有开 FTP 服务的机器,这个办法还是不理想。
 
我有办法,你先用一个线程来连接FTP服务器的21端口,如果连的上那就~~~~~~~~
连不上就退出,我有代码的,用WINSOCK写的,如果要的话,我可以给代码的~~~~~~~~
 
indy.connect(time);....我好象看过是这个用法,但没有试过
 
IdFTP1.Connect(true, 时间);
 
超时需要先设定为非阻塞状态,然后定时扫描,如果到时还没有ready,那么就超时了
 

Similar threads

后退
顶部