2011-08-23 15 views
9

¿Cuál sería la forma más fácil de convertir la variable "res" (CURLcode) en una CString?C++ LibCurl - Convirtiendo CURLcode en una CString

Este es el ejemplo estándar que compila bien en mi máquina pero quiero usarlo en una aplicación MFC y mostrar el resultado como un MessageBox. ¡Cualquier ayuda es apreciada!

#include <curl/curl.h> 

int main(void) 
{ 
    CURL *curl; 
    CURLcode res; 

    curl = curl_easy_init(); 
    if(curl) { 
    curl_easy_setopt(curl, CURLOPT_URL, "http://example.com"); 
    res = curl_easy_perform(curl); 

    /* always cleanup */ 
    curl_easy_cleanup(curl); 
    } 
    return 0; 
} 

Respuesta

8

Puede utilizar la función curl_easy_strerror.

CString str(curl_easy_strerror(res)); 

o

CString str; 
str.Format("curl_easy_perform return %s [%d]",curl_easy_strerror(res),res); 
+1

Parece que necesita usar curl_easy_setopt (curl, CURLOPT_ERRORBUFFER, myBuffer) primero, basado en http://curl.haxx.se/libcurl/c/curl_easy_setopt.html – Suma

1

Un CURLcode es un número, por lo que después de 4 segundos en Google y que nunca había utilizado MFC, encontré que usted puede hacer esto:

CString str; 
str.Format("%d", res); 
+0

Color Me Avergonzado. Gracias – kogh

+2

@kogh La segunda respuesta es probablemente mucho mejor, convirtiendo en una cadena sensible en lugar de solo un número. – Suma