Projektvorschlag: libCurl-Wrapper

Hier kann alles mögliche diskutiert werden. Themen zu Purebasic sind hier erwünscht.
Flames und Spam kommen ungefragt in den Mülleimer.
Benutzeravatar
Kiffi
Beiträge: 10711
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Projektvorschlag: libCurl-Wrapper

Beitrag 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
Zuletzt geändert von Kiffi am 22.03.2007 17:21, insgesamt 1-mal geändert.
a²+b²=mc²
Kekskiller
Beiträge: 752
Registriert: 14.09.2004 21:39
Kontaktdaten:

Beitrag 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...
Benutzeravatar
Rubiko
Beiträge: 943
Registriert: 25.02.2005 19:43
Computerausstattung: Intel i7 2600k
8GB Ram
GeForce GTX 560 Ti
Wohnort: Schwabach

Beitrag 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
Ich wollte die Welt verändern, doch Gott gab mir nicht den Quelltext.
Benutzeravatar
Kiffi
Beiträge: 10711
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Beitrag 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
a²+b²=mc²
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

Die XBLite-Version sollte doch umzusetzen sein, von jedem der RapidQ oder
QuickBasic ein bissel kennt.
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
walker
Beiträge: 278
Registriert: 29.08.2004 18:39
Wohnort: Bayern

Beitrag 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...)
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag 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
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
vonTurnundTaxis
Beiträge: 2130
Registriert: 06.10.2004 20:38
Wohnort: Bayreuth
Kontaktdaten:

Beitrag 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.
Nicht durch Zorn, sondern durch Lachen tötet man
ClipGrab | Pastor - jetzt mit kurzen URLs!
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag 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:
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
vonTurnundTaxis
Beiträge: 2130
Registriert: 06.10.2004 20:38
Wohnort: Bayreuth
Kontaktdaten:

Beitrag 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.
Zuletzt geändert von vonTurnundTaxis am 22.03.2007 21:17, insgesamt 1-mal geändert.
Nicht durch Zorn, sondern durch Lachen tötet man
ClipGrab | Pastor - jetzt mit kurzen URLs!
Antworten