Данные формы POST с использованием WinInet C++C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Данные формы POST с использованием WinInet C++

Сообщение Anonymous »

Я пытаюсь подключить эту программу к веб-сайту и отправить данные формы для входа в систему, но не знаю, что делаю неправильно. Я слышал о других, таких как Curl и Winsock, но я выбрал библиотеку WinINet. Поэтому только для тестирования этой программы я использовал веб-сайт Pastebin для публикации сообщений. Пока никаких результатов от этого я не увидел. Если этой программе удастся опубликовать данные формы, она предоставит мне заголовок к месту публикации на их сайте.

Правильно ли я пишу символ данных формы *? Я видел в других сообщениях stackoverflow, где перед некоторым числом было большое количество тире, а затем помещались данные формы.

Нужно ли мне что-то добавить к нему, чтобы оно имитировало нажатие кнопки отправки?

Нужно ли мне записывать значения для каждого элемента в форме?

Я пробовал HttpAddRequestHeaders, и это мне не помогло.

Кроме того, я получаю ошибку ERROR_INSUFFICIENT_BUFFER HttpOpenRequest, но он по-прежнему возвращает действительный HINTERNET.

#include
#include
#include

#pragma comment( lib,"Wininet.lib")
using namespace std;

char* getheaders(HINTERNET hRequest){
DWORD dwInfoLevel=HTTP_QUERY_RAW_HEADERS_CRLF;
DWORD dwInfoBufferLength=10;
char* pInfoBuffer=(char*)malloc(dwInfoBufferLength+1);
while(!HttpQueryInfo(hRequest,dwInfoLevel,pInfoBuffer,&dwInfoBufferLength,NULL)){
if (GetLastError()==ERROR_INSUFFICIENT_BUFFER){
free(pInfoBuffer);
pInfoBuffer=(char*)malloc(dwInfoBufferLength+1);
}else{
fprintf(stderr,"HttpQueryInfo failed, error = %d (0x%x)\n",GetLastError(),GetLastError());
break;
}
}
pInfoBuffer[dwInfoBufferLength] = '\0';
return pInfoBuffer;
}

void readfile(HINTERNET hRequest,char** buffs,int size){
DWORD dwBytesAvailable;
DWORD dwBytesRead;
for(int i=0;i

Подробнее здесь: https://stackoverflow.com/questions/555 ... -wininet-c
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»