关于INDY 里IdFtp的connect 的问题

pmes 2002-11-11 01:46:27
本人装了INDY9.0 而且也成功编译 FTPDEMO

一切都顺利通过,上传下载没问题

但今天我装了一个“天网防火墙”,

运行那个"FTPDEMO" 就出问题了! 一运行FTPDEMO “天网防火墙”就栏截

我当然按允许啦,但按了允许后,“FTPDEOM” 就出现死锁了!

我想是 FTPDEMO里IdFTP的connect 问题, 于是看了一下, connect 里有两个参加

第一个是"是否自动登录",第二个是"timeout" 我一看就高兴了,马上给timeout

设了个值,可是,对于以上“天网防火墙”的栏截仍是死锁,我用CUTEFTP 试过

没这个问题的!

现在我想请教高手,
1.INDY 的IdFTP 里connect 的timeout 是以什么单位计算的
2.对于以上的死锁问题,在cuteftp不存在, 那么我在程序里该如何解决?
...全文
150 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
shally5 2003-03-26
  • 打赏
  • 举报
回复
果然如此啊!
我发现idFTP在Linux7.X中也有同样类似的问题:
在连接时catch可以捕获连接异常(连接失败),但
是要发送的文件却上传了上去,只是文件长度是0
真是奇怪啊!连接不上FTP,却能上传文件名。。。
我在终端窗手动FTP就可以连接与传送东西,只不过
在连接时要等10-20秒。。。。
duguyai 2003-03-26
  • 打赏
  • 举报
回复
我本来也以为是毫秒,但经过测试肯定不为毫秒。
默认的IdTimeoutInfinite,IdTimeoutDefault 都比我设置为1000要短的多
gp7788 2003-01-23
  • 打赏
  • 举报
回复
up
大大怪老张 2003-01-20
  • 打赏
  • 举报
回复
呵呵,关注
gp7788 2003-01-20
  • 打赏
  • 举报
回复
是的!我也发现这个问题!NMftp就没有这个问题!
yuyulily 2002-12-02
  • 打赏
  • 举报
回复
MARK。。。
leonpard 2002-11-11
  • 打赏
  • 举报
回复
关注
pmes 2002-11-11
  • 打赏
  • 举报
回复
if (IdFTP1->Connected())
{
try
{
if (TransferrignData)
IdFTP1->Abort();
IdFTP1->Quit();
IdFTP1->Disconnect();
DirectoryListBox->Items->Clear();
SetFunctionButtons(false);
Panel3->Caption = "Current directory is: ";

}
catch(...)
{ ShowMessage("断开连接出错!");
ConnectButton->Caption = "Connect";
ConnectButton->Enabled = true;
ConnectButton->Default = true;
return;
}
ConnectButton->Caption = "Connect";
ConnectButton->Enabled = true;
ConnectButton->Default = true;

}
else
{ try
{
IdFTP1->Username = "wworldsoft";
IdFTP1->Password = "qd9LLx";
IdFTP1->Host = FtpServerEdit->Text;
IdFTP1->Connect(true,300);
ConnectButton->Caption = "DisConnect";
ConnectButton->Enabled = true;
ConnectButton->Default = true;
ChageDir("/");
SetFunctionButtons(true);
SaveHostInfo(FtpServerEdit->Text,"FTPHOST");//saving it here so that it is saved only after successful connect
}
catch(...)
{ ShowMessage("连接失败!");
if (IdFTP1->Connected())
{
ConnectButton->Enabled = true;
ConnectButton->Caption = "Disconnect";
ConnectButton->Default = false;
}
else
{
ConnectButton->Enabled = true;
ConnectButton->Caption = "Connect";
ConnectButton->Default = true;
}
}
}
warton 2002-11-11
  • 打赏
  • 举报
回复
把代码贴出来看看!!
warton 2002-11-11
  • 打赏
  • 举报
回复
毫秒
ljianq 2002-11-11
  • 打赏
  • 举报
回复
建议使用NMFTP,我发现NMFTP比IdFtp好使。

1,317

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder 网络及通讯开发
社区管理员
  • 网络及通讯开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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