以下是我写的一段程序
CLoginWnd logwnd;
logwnd.m_csServerName = strServerName;
HINTERNET hInternet=NULL;
if(hInternet = ::InternetOpen("",
INTERNET_OPEN_TYPE_PRECONFIG,
NULL,NULL,NULL))
{
HINTERNET hInnetConnect = NULL;
while(!(hInnetConnect = InternetConnect(
hInternet,strServerName,
nPort,logwnd.m_csUser,logwnd.m_csPWD,
INTERNET_SERVICE_HTTP,
NULL,0)))
{
if(logwnd.DoModal()!=IDOK)
{
break;
}
}
if(hInnetConnect)
{
LPCTSTR Accept = "*/*";
HINTERNET hRequest = NULL;
if(hRequest = HttpOpenRequest(hInnetConnect,
"GET",strObject,NULL,NULL,&Accept,
INTERNET_FLAG_EXISTING_CONNECT  and  INTERNET_FLAG_NO_AUTO_REDIRECT,
0))
{
if(::HttpSendRequest(hRequest,szHeaders,strlen(szHeaders),NULL,0))
{
DWORD dwSizeInput=0;
DWORD dwSizeBuffer=0;
DWORD dwSizeReaded=0;
InternetQueryDataAvailable(hRequest,&dwSizeBuffer,0,0);
while(dwSizeBuffer)
{
dwSizeInput+=dwSizeBuffer;
if(pRetByte==NULL)
{
pRetByte = (BYTE*)malloc(dwSizeInput+1);
}
else
{
pRetByte = (BYTE*)realloc(pRetByte,dwSizeInput+1);
}
InternetReadFile(hRequest,
pRetByte+dwSizeInput-dwSizeBuffer,
dwSizeBuffer,&dwSizeReaded);
InternetQueryDataAvailable(hRequest,&dwSizeBuffer,0,0);
}
dwDataSize = dwSizeInput;
}
InternetCloseHandle(hRequest);
}
InternetCloseHandle(hInnetConnect);
}
InternetCloseHandle(hInternet);
}