vent(hConnectedEvent);
}
break;
case 2: // Request handle
switch(dwInternetStatus)
{
case INTERNET_STATUS_HANDLE_CREATED:
{
INTERNET_ASYNC_RESULT *pRes = (INTERNET_ASYNC_RESULT *)lpStatusInfo;
m_hRequest = (HINTERNET)pRes->dwResult;
printf( "Request handle created/n");
SetEvent(hRequestOpenedEvent);
}
break;
case INTERNET_STATUS_REQUEST_SENT:
{
DWORD *lpBytesSent = (DWORD*)lpStatusInfo;
printf("Bytes Sent: %d/n", *lpBytesSent);
//dwNumBytesComplete += *lpBytesSent;
}
break;
case INTERNET_STATUS_REQUEST_COMPLETE:
{
INTERNET_ASYNC_RESULT *pAsyncRes = (INTERNET_ASYNC_RESULT *)lpStatusInfo;
printf("Function call finished" );
printf("dwResult: %d/n" ,pAsyncRes->dwResult);
printf( "dwError: %s/n ",pAsyncRes->dwError);
SetEvent(hRequestCompleteEvent);
}
break;
case INTERNET_STATUS_RECEIVING_RESPONSE:
printf("Receiving Response/n" );
break;
case INTERNET_STATUS_RESPONSE_RECEIVED:
{
DWORD *dwBytesReceived = (DWORD*)lpStatusInfo;
printf( "Received %d/n " , *dwBytesReceived);
}
}
}
}
代码中用一个回调函数来控制每一步是否完成,功能是下载一幅图片。