2008-11-03 16 views
8

Poszukuję dobrej biblioteki klienckiej FTP systemu Windows z licencją domeny publicznej lub typu BSD. Coś, co mam dostęp do kodu źródłowego i mogę go używać z C++ dla aplikacji Windows w aplikacji komercyjnej.Dobra bezpłatna biblioteka klienta FTP (dla komercyjnych aplikacji Windows C++)?

Od lat używamy Winineta, a to jest błędne i koszmarne. Ostatni słaby jest IE8 beta 2 zawiera nowy błąd w InternetGetLastResponseInfo(). Nie mogę już usprawiedliwiać korzystania z Wininet, gdy nasi użytkownicy mogą zainstalować najnowszą wersję IE i złamać naszą aplikację.

Spojrzałem na libcurl, ale jest zbyt ciężkie dla naszych potrzeb. Jedyne, czego potrzebuję, to obsługa FTP. Mógłbym spędzić dzień, pozbywając się całego kodu w libcurl, którego nie potrzebuję, ale raczej zacznę od przyjemnej prostej biblioteki klienta FTP, jeśli to możliwe.

Spojrzałem na ftplib (http://nbpfaus.net/~pfau/ftplib/), ale jest to GPL i potrzebuję tego dla komercyjnej aplikacji o zamkniętym kodzie źródłowym.

Napisałem wcześniej kod klienta FTP, to nie jest takie trudne (niestety minęło 15 lat i nie mam już kodu źródłowego). Musi istnieć niezła, prosta biblioteka wolnych klientów, która nie robi nic oprócz FTP i ma licencję, którą można wykorzystać w aplikacjach komercyjnych o zamkniętym kodzie źródłowym.

(Jeśli jesteś ciekawy, błąd polega na tym, że podczas próby FtpFindFirstFile() z witryną FTP, na której nie można nawiązać połączenia w trybie pasywnym, funkcja InternetGetLastResponseInfo() nie zwraca pełnej odpowiedzi. to tylko jeden z wielu błędów, które udało mi się znaleźć na przestrzeni lat .. Innym jest to, że obsługa FTP Winineta ignoruje wszystkie wartości limitu czasu. Ten konkretny błąd istnieje od lat.)

Odpowiedz

4

Potrzebujesz Ultimate TCP/IP, który jest teraz darmowy!

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

Otrzymasz FTP. HTTP, SMTP, POP i więcej.

Nie będziesz żałować.

+0

To wygląda idealnie, wydaje się być bardzo dobrze zorganizowane i zrozumiałe, będzie pełny kod źródłowy, prawidłowa licencja, a ja zrobiłem prostą konsolę testową FTP, która kompilowała się do 42k. Dzięki! – mhenry1384

1

Zamówienie filezilla server dla systemu Windows.

+0

FilezillaServer nie uruchomi się bez jakichś niejasnych łatek Windows. Ich fora odrzucają adresy w Gmailu jako spamerzy, ale akceptują adresy hotmailowe. Nie można go uruchomić w systemie Windows 7. – mosh

1

Szukasz interfejsu wiersza polecenia lub interfejsu API? Możesz dopasować bogatą funkcjonalność do swoich potrzeb. W przeciwnym razie spójrz na http://www.sourceforge.net, aby uzyskać wiele opcji.

4

Użyłem libCurl do bardzo dobrego efektu. Jedyną wadą jest to, że według mojej wiedzy nie ma wsparcia dla analizowania informacji katalogowych, które pochodzą z serwerów FTP (najwyraźniej nie ma standardowego formatu katalogów).