请教各位一下下,有没有人也遇到同样的问题?有没有解决的办法?IdFTP-〉list之后报eidconnclosedgracefully异常,但是可以从服务器得到目录列表;
然后disconnect;
然后在此用list时,FTP应答426,程序就不动了,如果等一会儿,或者重启服务器程序就又可以用了。这是怎么回事?老是这样的话,更改目录的操作就不能进行了。
谢谢各位!
然后disconnect;
然后在此用list时,FTP应答426,程序就不动了,如果等一会儿,或者重启服务器程序就又可以用了。这是怎么回事?老是这样的话,更改目录的操作就不能进行了。
谢谢各位!
PORT?
注意模式问题
filelist := TStringList.Create;
try
FTPClient.ChangeDir('/');
FTPClient.List(filelist); //这儿出错??
list 返回226和目录列表
quit 返回221 goodbye!这时马上再发IdFTP.List或是changedir,list
就会返回446,transfer aborted为啥尼????
FTPClient.Host := sHost;
FTPClient.Port := iProt;
FTPClient.Username := UserName;
FTPClient.Password := sPwd;
FTPClient.Connect(true,10000);filelist := TStringList.Create;
try
FTPClient.ChangeDir('/');
FTPClient.List(filelist);
有问题?
……
filelist := TStringList.Create;
try
FTPClient.List(filelist);没用ChangeDir('/'),这时先报“EIdConnectionClosedGracefully”,收到服务器的目录列表(226)这个时候,再发
ChangeDir('/**');可以进到子目录
FTPClient.List(filelist);
这个List就不行了,返回426或者:
IdFTP.Quit;
紧接着:
FTPClient.Host := sHost;
FTPClient.Port := iProt;
FTPClient.Username := UserName;
FTPClient.Password := sPwd;
FTPClient.Connect(true,10000);filelist := TStringList.Create;
try
FTPClient.List(filelist);
也不行,List返回426
不必设根目录。是模式问题,改用PASV模式就没有问题了。谢谢楼上各位!!