9

我正在寻找具有公共域或 BSD 类型许可证的良好开源 Windows FTP 客户端库。我可以访问源代码的东西,我可以从 C++ 中将它用于商业应用程序中的 Windows 应用程序。

我们已经使用 Wininet 多年了,它有问题而且很可怕。最后一根稻草是 IE8 beta 2 在 InternetGetLastResponseInfo() 中包含一个新错误。当我们的用户可以安装最新版本的 IE 并破坏我们的应用程序时,我再也无法证明使用 Wininet 是合理的。

我看过 libcurl,但它对我们的需求来说太重了。我唯一需要的是 FTP 支持。我可以花一天时间去掉 libcurl 中我不需要的所有代码,但如果可能的话,我宁愿从一个简单的 FTP 客户端库开始。

我查看了 ftplib ( http://nbpfaus.net/~pfau/ftplib/ ),但它是 GPL,我需要它用于闭源商业应用程序。

我以前写过 FTP 客户端代码,没那么难(可惜那是 15 年前的事了,我已经没有源代码了)。必须有一个不错的简单免费客户端库,除了 FTP 什么都不做,并且有一个可以在闭源商业应用程序中使用的许可证。

(如果您很好奇,错误在于,如果您尝试使用无法建立被动模式连接的 FTP 站点使用 FtpFindFirstFile(),InternetGetLastResponseInfo() 不会返回完整响应。这只是其中之一这些年来我发现的错误。另一个是 Wininet 的 FTP 支持忽略所有超时值。这个特定的错误已经存在多年。)

4

5 回答 5

3

我使用libCurl效果非常好。唯一的缺点是,据我所知,不支持解析从 FTP 服务器返回的目录信息(显然,没有标准的目录格式)。

于 2008-11-03T17:02:50.410 回答
3

您需要现在免费的 Ultimate TCP/IP!

http://www.codeproject.com/KB/MFC/UltimateTCPIP.aspx

你得到 FTP。HTTP、SMTP、POP 等。

你不会后悔的。

于 2008-11-03T20:35:01.667 回答
1

签出适用于 Windows 的filezilla 服务器

于 2008-11-03T16:40:51.950 回答
1

您在寻找命令行界面还是 API?您可能能够根据wget您的需要调整功能丰富的功能。否则,请查看http://www.sourceforge.net以获得许多选项。

于 2008-11-03T16:41:19.843 回答
1

这是我知道的最好的 FTP 库:Kira 的 FTP 库,您可以在以下位置下载:http: //kirarelease.altervista.org/Home/index.html

用鼠标在框上方通过,你就会明白我为什么这么喜欢它:代码是我迄今为止找到的最简单的代码:)

于 2011-01-16T15:14:07.200 回答