Implementing libcurl:de
libcurl ist eine freie Bibliothek, die Daten aus dem Internet herunterladen kann. Sie unterstützt jedes vorstellbare Protokoll und ist verfügbar unter einer MIT/X abgeleiteten Lizenz.
Implementierung
Windows
- Die neuste Version von libcurl herunterladen.
- Die
\lib
und\include
Verzeichnisse an eine günstiges Stelle entpacken. - libcurl's VS-Projekt öffnen und in den Releasemodus wechseln.
- Gehe nach libcurl > Properties > C/C++ > Preprocessor > Definitions und füge
CURL_STATICLIB
hinzu. Solange man nicht wirklich LDAP verwenden will, sollteHTTP_ONLY
ebenfalls hinzugefügt werden. - Gehe nach libcurl > Properties > C/C++ > Code Generation > Runtime Library und ändere es nach
Multi-threaded (/MT)
. - Baue libcurl.
- Füge
libcurl.lib
zum Hauptprojekt hinzu. Der einfachste Weg ist, es in den Solution Explorer zu schieben. - Gehe nach Your Project > Properties > C/C++ > Preprocessor > Definitions und füge
CURL_STATICLIB
hinzu, wie es bereits für curl selbst erledigt wurde. - Gehe nach Your Project > Properties > C/C++ > General > Additional Include Directories und füge das vorher entpackte libcurl-
\include
-Verzeichnis hinzu. - Gehe nach Your Project > Linker > Input > Additional Dependencies und füge
ws2_32.lib
hinzu. Wenn LDAP verwendet werden soll, muss auchwldap32.lib
hinzugefügt werden. #include "curl/curl.h"
und beginne mit Programmieren!

Linux
Zu erledigen
Verwendung
Hier der Code zum ausgeben der Inhalt einer Webseite auf der Konsole:
#include "curl/curl.h"
// Wird aufgerufen, wenn curl Daten vom Server erhält
static size_t rcvData(void *ptr, size_t size, size_t nmemb, void *userdata)
{
Msg((char*)ptr); // bis zu 989 Zeichen gleichzeitig
return size * nmemb;
}
void PrintPage()
{
CURL *curl;
curl = curl_easy_init();
curl_easy_setopt(curl, CURLOPT_URL, "developer.valvesoftware.com");
curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, rcvData);
curl_easy_perform(curl);
curl_easy_cleanup(curl);
}
ConCommand print_page("print_page", PrintPage);