Seite 1 von 3

Projektvorschlag: libCurl-Wrapper

Verfasst: 22.03.2007 10:42
von Kiffi
Hallo,

es gibt eine interessante Library, welche eine Art eierlegende Wollmichsau
für den Dateitransfer darstellt: libCurl
libcurl is a free and easy-to-use client-side URL transfer library, supporting
FTP, FTPS, HTTP, HTTPS, SCP, SFTP, TFTP, TELNET, DICT, FILE and LDAP.
libcurl supports SSL certificates, HTTP POST, HTTP PUT, FTP uploading,
HTTP form based upload, proxies, cookies, user+password authentication
(Basic, Digest, NTLM, Negotiate, Kerberos4), file transfer resume, http
proxy tunneling and more!

libcurl is highly portable, it builds and works identically on numerous
platforms, including Solaris, NetBSD, FreeBSD, OpenBSD, Darwin, HPUX,
IRIX, AIX, Tru64, Linux, UnixWare, HURD, Windows, Amiga, OS/2, BeOs,
Mac OS X, Ultrix, QNX, OpenVMS, RISC OS, Novell NetWare, DOS and
more...

libcurl is free, thread-safe, IPv6 compatible, feature rich, well supported,
fast, thoroughly documented and is already used by many known, big and
successful companies and numerous applications.
Es gibt bereits eine Menge Programmiersprachen, die libCurl einbinden.
Leider (und wie so oft) ist PureBasic mal wieder nicht dabei.
Ada95, Basic, C, C++, Ch, Cocoa, D, Dylan, Euphoria, Ferite, Gambas,
glib/GTK+, Java, Lisp, Lua, Mono, .NET, Object-Pascal, OCaml, Pascal,
Perl, PHP, Postgres, Python, R, Rexx, Ruby, Scheme, S-Lang, Smalltalk,
SPL, Tcl, Visual Basic, Q, wxWidgets, XBLite
Diese Lib kann meines Erachtens auch von PureBasic aus relativ leicht
nutzbar gemacht werden. Leider fehlt mir momentan die Zeit die
libCurl-Features in PB zu wrappen. Wäre IMO nämlich mal wieder ein
interessantes Projekt für die PBOSL.

Weitere Infos und Download: http://curl.haxx.se/libcurl/

Grüße ... Kiffi

Verfasst: 22.03.2007 10:47
von Kekskiller
Das nenn ich mal fette Features, ich persöhnlich mich sehr darüber freuen. Leider reichen meine Kenntnisse in Sachen Transferprotokolle wahrscheinlich nicht dafür, um alles testen zu können. Bin ohnehin schon sehr beschäftigt mit meinem Projekt...

Verfasst: 22.03.2007 16:44
von Rubiko
Also meine Kenntnisse reichen auf jeden Fall nicht aus :)
Würde mich auch drüber freuen!

btw: Ich nehm mal an, dass das ein Tippfehler ist im Betreff

Verfasst: 22.03.2007 17:22
von Kiffi
Rubiko hat geschrieben:btw: Ich nehm mal an, dass das ein Tippfehler ist im Betreff
In der Tat. Danke für den Hinweis! Ist korrigiert worden.

Grüße ... Kiffi

Verfasst: 22.03.2007 17:53
von ts-soft
Die XBLite-Version sollte doch umzusetzen sein, von jedem der RapidQ oder
QuickBasic ein bissel kennt.

Verfasst: 22.03.2007 19:05
von walker
Für den Anfang..

http://home.arcor.de/x-linux/pure/libdef_curl_.pbi

Es fehlen noch ein paar Dinge (im wesentlichen die API Aufrufe)
Es wird aber ein paar Tage dauern.... (ggf. kann jemand anderes schon ein wenig weitermachen...)

Verfasst: 22.03.2007 19:22
von ts-soft
walker hat geschrieben:Für den Anfang..
Sieht schon gut aus
walker hat geschrieben:
http://home.arcor.de/x-linux/pure/libdef_curl_.pbi

Es fehlen noch ein paar Dinge (im wesentlichen die API Aufrufe)
Es wird aber ein paar Tage dauern.... (ggf. kann jemand anderes schon ein wenig weitermachen...)
Ich würde aber lieber Prototypes nutzen statt CallCFunctionFast und gleich
mit Compilerdirektiven für Win und Lin.
Könnte das bisherige darauf anpassen, aber nur wenn Dir die Prototypes
recht sind (kein zusätzlicher Overhead durch Proceduren und sicherer)

Gruß
Thomas

Verfasst: 22.03.2007 20:29
von vonTurnundTaxis
Warum nicht einfach curl als Anwendung (unter Linux ist das einfach "curl", unter Windows gibts wohl ein "curl.exe") aufrufen?
Ich mache das mit einem Programm von mir und das funktioniert wunderbar.

Verfasst: 22.03.2007 20:37
von ts-soft
vonTurnundTaxis hat geschrieben:Warum nicht einfach curl als Anwendung (unter Linux ist das einfach "curl", unter Windows gibts wohl ein "curl.exe") aufrufen?
Ich mache das mit einem Programm von mir und das funktioniert wunderbar.
Ich nutze in meinen Programmen DLLs anderer Hersteller, wenns nicht ohne
geht, aber fremde Programme :mrgreen:
Tut mir Leid, das hat nichts mit Programmieren zu tun.
Dann kann ich ja auch ne exe mit RunProgram("Notepad") als meinen Editor weitergeben.
Das kannste für Deine Bedürfnisse, für Dich, auf Deinem Rechner machen,
aber sonst hat der Tipp keinen grossen Wert :mrgreen:

Verfasst: 22.03.2007 21:14
von vonTurnundTaxis
In diesem Fall ist der Unterschied zwischen der SO und dem Program recht marginal...

//Nachtrag:
Wenn man z.B. nur eine HTTPS-Seite aufrufen will (wie in meinem Fall) ist es IMO besser, einfach auf curl zurückzugreifen.