我用inftp做上传,隔一段时间上传几个文本文件,都不大,十几k,
但是上传一段时间,时间不等,几个小时或一天,就会死在idftp.put这句上,函数不会返回,
超时设置readtimeout也没有用,上传的文件也一直被占用,不知道是什么原因
还有如果我要写个监视线程,应该怎么监视超时,监视到怎么处理能让上传过程中断,上传文件释放掉
谢谢各位

解决方案 »

  1.   

    idftp如果不使用线程的话非常不好,遇到稍大的文件不管是上传或是下载都会假死。所以建议用线程去做。
      

  2.   

    谢谢我是放在线程里用的,不是界面死的问题,是运行到idftp.put时候线程卡死了
      

  3.   

    我也刚好在用idftp,也是遇到楼主相同的问题,但是只是serv——U架设的ftp有这样的问题。IIS的不会,感觉是Serv-U的问题。
      

  4.   

    两位老大比我厉害啊,我现在连put都没法实现,逼得没法了,用dos批处理加dephi调用实现的,感觉好丑啊,正在学习用idftp。
      

  5.   

    我有好久不用dephi了,能不能教我如何实现的上传,我用用下面的代码上传数据,老是在put的时候提示connection closed gracefully。为什么哦?(用dos测试用户名密码和服务器状态均正常) with IdFtp1 do begin 
      user := 'zz'; 
      password := 'zzzzzz'; 
      host := '134.45.22.15'; 
      connect; 
      transfertype:= ftBinary;   idftp1.Put(edit1.Text,'aa',true);
    或者帮忙到http://topic.csdn.net/u/20090907/15/69c1db1c-4c88-4f67-b1ca-f6ad996d60e1.html上回答一下,谢谢了!
      

  6.   

    以前我好象也见过这样的问题,后来改用动态创建释放就没问题了。你可以写一个上传函数,里面动态创建TidFtp来用,用完就释放