Прочитайте документацию для curl_formadd
: http://curl.haxx.se/libcurl/c/curl_formadd.html
В частности, в разделе «Опции»:
CURLFORM_PTRCONTENTS
с указателем на содержимое
этой части, фактические данные для отправки
далеко. libcurl будет использовать указатель и
обратитесь к данным в вашем приложении,
поэтому вы должны убедиться, что он остается до
скручиваемость больше не нужна. Если данные
не заканчивается NUL, или если вы хотите
он должен содержать ноль байтов, вы должны установить
его длина с
CURLFORM_CONTENTSLENGTH.
CURLFORM_CONTENTSLENGTH
с последующим длинным указанием длины
содержания. Обратите внимание, что для
CURLFORM_STREAM содержимое, эта опция
является обязательным.
Так что вместо
curl_formadd(&formpost,
&lastptr,
CURLFORM_COPYNAME, "send",
CURLFORM_FILE, "nowy.jpg",
CURLFORM_END);
Вы бы хотели что-то вроде
curl_formadd(&formpost,
&lastptr,
CURLFORM_COPYNAME, "send",
CURLFORM_PTRCONTENTS, p_jpg_data,
CURLFORM_CONTENTSLENGTH, jpg_data_len,
CURLFORM_END);
Я предполагаю, что вы знаете, как создать p_jpg_data
и прочитать данные в него, или вам нужно это объяснить?