我使用tidftp写一个每5分钟运行一次的ftp上传及下载程序,发现查不多隔一段时间程序就要停止运行,时间间隔不一定,而且老是停止在获取当前文件夹下的所有文件名这里,代码如下:dm.IdFTP1.List(FileList,'',false);我也曾经试过dm.IdFTP1.List(FileList,'*.*',false);也有同样的问题。不知道诸位大虾有没有碰到过这种情况?
我猜测可能是网络速度慢的原因,有没有什么办法可以在规定的时间后自动断开连接。
我猜测可能是网络速度慢的原因,有没有什么办法可以在规定的时间后自动断开连接。
解决方案 »
- 如何做QQ用户列表那样的界面?
- 关于GPIB协议和RS232串口之间关系的问题。
- TRzDBComboBox.Text不能及时刷新到相应的DataField中 ?
- 怎样取得OpenDialog1中的选择的文件的绝对路径?
- 推荐一个超好的bt下载计算机讲座,认证培训资料,学习软件,和英语讲座考研讲座等等好东西大家快来下啊
- 如何在表的一个已有字段前插入一个新字段?
- 关于DOQuery的一个简单问题??在线…… ……
- record类型用什么来产生实例
- 建筑材料管理软件
- 像某些软件可让用户自定义增加树节点及分支点那么treeview是如何存放及读取的。
- 有意思的问题!Delphi中同一个Timer时间周期中,实现红、绿转换,要求红色灯亮的时间是5秒,绿灯是1秒
- 从资源文件中调用dll
Connect(True,TimeOut);
改换IIS试试!
目前官方都是9.0.18的哦定一个超时控制嘛,出现问题就重新连接
服务器在台湾,是客户的,我们没有办法换掉服务器段的ftp软件to ly_liuyang:
你说的超时控制指的是Connect(AAutoLogin: boolean; const ATimeout: Integer)里的ATimeout么?我的程序已经执行connect成功了,但是在执行list的时候死机,设置这个timeout有用么?
当时,服务器端用的时SERV_U,我当时也能连接成功,但是一List就不响应了。我用SOCKET 直接发送请求过去,也是类似情况。后来让他把SERV_U给换成IIS的FTP,情况就解决了!可能因为人家的FTP做了一些限制,比如带宽等。
你不妨问问人家的系统管理员。
Resolving hostname ****.*****.***.****.
Connecting to ip地址
Connected.
<<- 2005-12-20 23:31:12 220-extended FTP [PIPELINE] (1) (FTP地址)
220- (FTP地址)/**.**.**.** Oracle Internet File System FTP Server 9.0.2.2.0
220
->> 2005-12-20 23:31:12 USER 用户名
<<- 2005-12-20 23:31:13 331 Password required for 用户名.
->> 2005-12-20 23:31:13 PASS 密码
<<- 2005-12-20 23:31:14 230 User 用户名logged in.
->> 2005-12-20 23:31:14 TYPE A
<<- 2005-12-20 23:31:15 200 TYPE set to A.
->> 2005-12-20 23:31:15 SYST
<<- 2005-12-20 23:31:16 215 UNIX system type.
Connection established
->> 2005-12-20 23:31:16 CWD 目录
<<- 2005-12-20 23:31:16 250 CWD Command successful.
Starting FTP transfer
->> 2005-12-20 23:31:16 PORT 本机ip,18,117
<<- 2005-12-20 23:31:18 200 PORT Command successful.
->> 2005-12-20 23:31:18 LIST
<<- 2005-12-20 23:31:18 150 ASCII data connection for /bin/ls (ftp地址/***.**.**.**.**.**) (0 bytes).我测试了一下,设置IdFTP1.passive:=true;使用被动模式不死了,问题是我同事用java写的ftp连接程序使用org.apache.commons.net.ftp.FTPClient类就没有问题,采用的是该类的默认的标准模式,郁闷中阿!!!!!
可能是Indy有点小问题需要修正没什么好郁闷的,记住,控件本身也是可能有Bug的,所以Debug需要进入到控件源码上!