delphi TIdFtp 控件的问题?

yang1870049 2012-02-06 04:44:34
File := 'G:\A.txt';
idftp1.Put(File,(ExtractFileName(File)));

put时 报错!
错误信息 :Project Project1.exe raised exception class EIdProtocolReplyError with message 'A.txt': Forbidden
FileName ', Process stopped .Use Step or Run to continue。

有哪位高人与见过这种情况吗?
...全文
147 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
erhan 2012-02-07
  • 打赏
  • 举报
回复
建议先把tidftp的使用整好:

新建工程,按钮上传

然后再与线程配合。
yang1870049 2012-02-07
  • 打赏
  • 举报
回复
还是出同样的问题!

这是个多线程的程序,一个线程是先获取文件的,全路径,通过一个动态链接库获取固有属性(hash值,大小,修改时间)后,将文件保存到一个数据库中,
另一个线程从数据库中遍历所有文件的全路径 ,然后上传值ftp!我更总发现 ,当一个文件被获取属性保存到数据库中后,另一个线程(从数据库中获得了这个文件的全路径)也在上传这个文件时,就会出错! accesss violation at address 00000.
[Quote=引用 3 楼 lzg827 的回复:]

比如利用IdFTP1.put()把文件a.word上传到网站www.abcd.com/wwwroot目录下
确定网站指定的目录是提供FTP站点。
idftp1登陆成功后

Dir_List: TStringList;
IdFTP1.List(Dir_List,'',true); 获到目录下面的文件夹

IdFTP1.ChangeDir('wwwroot');
IdFTP1……
[/Quote]
lzg827 2012-02-06
  • 打赏
  • 举报
回复
比如利用IdFTP1.put()把文件a.word上传到网站www.abcd.com/wwwroot目录下
确定网站指定的目录是提供FTP站点。
idftp1登陆成功后

Dir_List: TStringList;
IdFTP1.List(Dir_List,'',true); 获到目录下面的文件夹

IdFTP1.ChangeDir('wwwroot');
IdFTP1.Put('d:\a.word', 'a.word', false);
lzg827 2012-02-06
  • 打赏
  • 举报
回复
idftp1.ChangeDir();
然后你再idftp1.put
yang1870049 2012-02-06
  • 打赏
  • 举报
回复

错误信息 :
Project Project1.exe raised exception class EIdProtocolReplyError with message 'A.txt': Forbidden FileName '……
[/Quote]

5,386

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧