急!!!用C++ 写FTP客户端,遍历文件夹,循环PASV和LIST,过一段时间和提示426和451错误,有谁知道为什么吗
我用C++写的FTP客户端,用来访问公司的FTP服务器,遍历文件夹下的特定文件,便于统计文件名称。我是基于socket写的,并没用wininet接口。我的过程是,进入某个文件夹,PASV,获得新的端口号,创建新的连接,再LIST。之前会比较正常,能够成功遍历,但有的时候代码跑了一段时间,PASV和LIST之后,服务器会返回如下错误:
426 Data connection unexpectedly closed.
150 Opening ASCII mode data connection for /bin/ls.
我再重新PASV后,又提示:
451 Another command is currently pending, please try again later.
有谁知道是什么原因吗?
有的时候文件全部遍历完,跑了一个多小时都没问题,有的时候中途就会报这个错误