【问题标题】:Indy 10 Delphi FTP Client Demo ErrorIndy 10 Delphi FTP 客户端演示错误
【发布时间】:2011-12-07 15:46:10
【问题描述】:

我是 Delphi 的新手,想尝试分解一个演示以了解它的结构。

我正在尝试让 Indy 10 Delphi FTP 客户端演示在 Delphi XE2 上运行。

每当我运行下载的代码时,我都会输入 FTP URL、用户名、密码等,当 FTP 连接时会出现此错误:

引发的异常类 $C00000005 带有消息“访问冲突在 0x0018f90e:写入地址 0x0000000'

我认为这意味着它指向一个空值?

调试工具简单点在这一行..

ChangeFTPDir(Sites[cbFTPAddress.ItemIndex].RootDir);

消除此错误的最佳方法是什么(尝试/捕获),或者是否有可以查看的 Delphi FTP 过程的工作示例?

提前感谢您的宝贵时间,

苏菲

流程如下:

procedure TfrmMain.ChangeFTPDir(NewDir: String);
begin
  FLastDirStack.Add(FTP.RetrieveCurrentDir);
  FTP.ChangeDir(NewDir);
  DisplayFTP;
end;

我假设站点数组确实包含详细信息,因为 ftp 在错误出现之前确实连接到存储的 ftp 站点的名称...

【问题讨论】:

  • 是的,错误意味着正在写入一个 nil 指针。您是否验证Sites[] 已分配且ItemIndex 大于0? ChangeFTPDir() 的代码是什么样的?
  • procedure TfrmMain.ChangeFTPDir(NewDir: String);开始 FLastDirStack.Add(FTP.RetrieveCurrentDir); FTP.ChangeDir(新目录);显示FTP;结束;

标签: delphi ftp client indy10


【解决方案1】:

你用过IdAllFTPListParsers 吗?试试看。

【讨论】:

    猜你喜欢
    • 2020-01-29
    • 2011-09-18
    • 2019-04-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多