Показать сообщение отдельно

  #2  
Старый 12.12.2009, 19:16
sn0w
Статус пользователя:
Регистрация: 26.07.2005
Сообщений: 568
Провел на форуме:
1290766

Репутация: 1236


По умолчанию

Код:
LPVOID Inet_GET(IN LPSTR host, IN LPSTR request, IN LPSTR referrer,OUT LPDWORD retlen, IN BOOL KeepConnection)
{
	LPCSTR szAccept[] = {"*/*", NULL};
	LPCSTR szUserAgent = "Mozilla/5.0 (Windows; U; Windows NT 6.1; ru; rv:1.9.1.3) Gecko/20090824 Firefox/3.5.3";

	*retlen = 0;

	HINTERNET hInternet = InternetOpen(szUserAgent, INTERNET_OPEN_TYPE_DIRECT, NULL, NULL,0);
	
	DWORD flags = INTERNET_FLAG_RELOAD | INTERNET_FLAG_PRAGMA_NOCACHE;
	if(KeepConnection) flags |= INTERNET_FLAG_KEEP_CONNECTION;
	HINTERNET hConnect = InternetConnect(hInternet, host, 80, NULL, NULL, INTERNET_SERVICE_HTTP, 0, 0);
	HINTERNET hRequest = HttpOpenRequest(hConnect, "GET", request, NULL, referrer, szAccept, flags, 0);

	HttpSendRequest(hRequest, 0, 0, NULL, 0);
	
	LPVOID	outbuff = halloc(4096);
	LPVOID	p = outbuff;

	DWORD size = 0, curr = 0;

	while(InternetReadFile(hRequest, p, 4096, &curr)==TRUE && curr !=0){
		size += curr;
		outbuff = hrealloc(outbuff, size + 4096);
		p = (LPVOID)((DWORD)outbuff+size);
	}

	InternetCloseHandle(hRequest);
	InternetCloseHandle(hConnect);
	InternetCloseHandle(hInternet);

	*retlen = size;
	return outbuff;
}
//////////////////////////////////////////////////////////////////////////
LPVOID Get_Image(char *url, DWORD *len, char *referrer)
{
	return Inet_GET("pix01.devki.ws", url, referrer, len, 0);
}
__________________


snow white world wide