INTERNET handle1,handle2,handle3,handle4;
char *agent="Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.9.2.3) Gecko/20100401 Firefox/3.6.3 (.NET CLR 3.5.30729)";
handle1 = InternetOpen(agent, 0, NULL, NULL, 0);
handle2 = InternetConnect(handle1, "www.secure.xxx.com", INTERNET_DEFAULT_HTTPS_PORT, NULL, NULL, INTERNET_SERVICE_HTTP, 0, 0);
handle3 = HttpOpenRequest(handle2, "POST", "/account/?subtopic=createaccount", NULL, "command", 0, INTERNET_FLAG_SECURE,0);
HttpSendRequest(handle3, "Content-Type: application/x-www-form-urlencoded\r\n", 31,post,i );
int p=InternetErrorDlg (NULL,
handle3, ERROR_INTERNET_INCORRECT_PASSWORD,
FLAGS_ERROR_UI_FILTER_FOR_ERRORS |
FLAGS_ERROR_UI_FLAGS_GENERATE_DATA |
FLAGS_ERROR_UI_FLAGS_CHANGE_OPTIONS,
NULL);
InternetCloseHandle(handle1);
InternetCloseHandle(handle2);
InternetCloseHandle(handle3);
Po wykonaniu kodu nie nastepuje resjtracja. W funkcji SendReqest 3 od konca argument podaje 31 jako dlugosc header z msdn: "dwHeadersLength [in]
Size of the additional headers, in TCHARs. If this parameter is -1L and lpszHeaders is not NULL, the function assumes that lpszHeaders is zero-terminated (ASCIIZ), and the length is calculated. See Remarks for specifics."
Nie bardzo potrafie się przegryźć przez to.
Dodatkowo na msdn pisze:
"SSL and PCT functionality are provided by Schannel.dll, which is properly installed when you run the redistribution program Wintdist.exe or Wint351.exe. See Redist.txt or Axredist.txt for information about redistributing Schannel.dll."
Z tym, że jak pogooglowalem troche to okazalo sie ze te exeki sa potrzebne jak ma sie IE starszego niz 3.1(dobrze zrozumiałem?)
//POST /account/?subtopic=createaccount
accountname=1&email=2&agreeagreement=true&agreerules=true&agreeprivacy=true&step=creation&Submit.x=101&Submit.y=12
zczytany POST dla przykaldowych danych(rejstracja reczna) za pomoca Live HTTP headers
Z góry dziekuje za pomoc
Edit : po dodaniu kodu z InternetErrorDlg otrzymuje p= 6 ale wydaje mi sie, że źle wywołuje ta funkcje