锘??xml version="1.0" encoding="utf-8" standalone="yes"?>久久这里只有精品久久,久久久久久一区国产精品,国产亚洲精久久久久久无码AVhttp://m.shnenglu.com/zhupf/archive/2013/07/02/201459.htmlzhupfzhupfTue, 02 Jul 2013 06:44:00 GMThttp://m.shnenglu.com/zhupf/archive/2013/07/02/201459.htmlhttp://m.shnenglu.com/zhupf/comments/201459.htmlhttp://m.shnenglu.com/zhupf/archive/2013/07/02/201459.html#Feedback0http://m.shnenglu.com/zhupf/comments/commentRss/201459.htmlhttp://m.shnenglu.com/zhupf/services/trackbacks/201459.html
#include "windows.h"
#include "winhttp.h"
#include "wchar.h"
#pragma comment(lib,"Winhttp.lib")
// SSL (Secure Sockets Layer) example
// compile for console
void main()
{
HINTERNET hOpen = 0;
HINTERNET hConnect = 0;
HINTERNET hRequest = 0;
IStream *stream = NULL;
HRESULT hr;
while (1)
{
hOpen = WinHttpOpen(L"Aurora Console App", WINHTTP_ACCESS_TYPE_DEFAULT_PROXY,
WINHTTP_NO_PROXY_NAME, WINHTTP_NO_PROXY_BYPASS, 0);
if (!hOpen) {
wprintf(L"WinHttpOpen failed (0x%.8X)\n", GetLastError());
break;
}
hConnect = WinHttpConnect(hOpen, L"raw.github.com", INTERNET_DEFAULT_HTTPS_PORT, 0);
if (!hConnect) {
wprintf(L"WinHttpConnect failed (0x%.8X)\n", GetLastError());
break;
}
LPCWSTR types[2];
types[0] = L"text/html";
types[1] = 0;
// use flag WINHTTP_FLAG_SECURE to initiate SSL
hRequest = WinHttpOpenRequest(hConnect, L"GET", L"zpfzzz/test/master/README.md",
NULL, WINHTTP_NO_REFERER, &types[0], WINHTTP_FLAG_SECURE);
if (!hRequest)
{
wprintf(L"WinHttpOpenRequest failed (0x%.8X)\n", GetLastError());
break;
}
if (!WinHttpSendRequest(hRequest, WINHTTP_NO_ADDITIONAL_HEADERS, 0, WINHTTP_NO_REQUEST_DATA, 0, 0, 0))
{
wprintf(L"WinHttpSendRequest failed (0x%.8X)\n", GetLastError());
break;
}
if (!WinHttpReceiveResponse(hRequest, 0))
{
wprintf(L"WinHttpReceiveResponse failed (0x%.8X)\n", GetLastError());
break;
}
// query remote file size, set haveContentLength on success and dwContentLength to the length
wchar_t szContentLength[32];
DWORD cch = 64;
DWORD dwHeaderIndex = WINHTTP_NO_HEADER_INDEX;
BOOL haveContentLength = WinHttpQueryHeaders(hRequest, WINHTTP_QUERY_CONTENT_LENGTH, NULL,
&szContentLength, &cch, &dwHeaderIndex);
DWORD dwContentLength;
if (haveContentLength) dwContentLength = _wtoi(szContentLength);
// read the response into memory stream
hr = CreateStreamOnHGlobal(0, true, &stream);
if (hr) {
wprintf(L"CreateStreamOnHGlobal failed (0x%.8X)\n", hr);
break;
}
// allocate buffer for streaming received data
char *p = new char[4096];
if (!p)
{
wprintf(L"failed to allocate buffer\n");
break;
}
// to receive all data, we need to enter a loop
DWORD dwReceivedTotal = 0;
while (WinHttpQueryDataAvailable(hRequest, &cch) && cch)
{
if (cch > 4096) cch = 4096;
dwReceivedTotal += cch;
// display number of received bytes
if (haveContentLength)
{
wprintf(L"received %d of %d (%d%%)%c", dwReceivedTotal, dwContentLength, 
dwReceivedTotal*100/dwContentLength, 13);
}
else {
wprintf(L"received %d (unknown length)%c", dwReceivedTotal, 10);
}
WinHttpReadData(hRequest, p, cch, &cch);
// write into stream
hr = stream->Write(p, cch, NULL);
if (hr)
{
wprintf(L"failed to write data to stream (0x%.8X)\n", hr);
}
}
delete [] p;
wprintf(L"\n\nreceived all data.\n");
// terminate the sream with a NULL
p = NULL;
stream->Write(&p, 1, NULL);
// get pointer to stream bytes
wprintf(L"getting HGLOBAL from stream...\n");
HGLOBAL hgl;
hr = GetHGlobalFromStream(stream, &hgl);
if (hr) {
wprintf(L"GetHGlobalFromStream failed (0x%.8X)\n", hr);
break;
}
wprintf(L"locking memory...\n");
p = (char*)GlobalLock(hgl);
if (!p)
{
wprintf(L"GlobalLock failed (0x%.8X)\n", GetLastError());
break;
}
wprintf(L"displaying received data...\n");
// terminate the string at 1024 bytes (MessageBox lag)
//if (dwReceivedTotal > 1024) dwReceivedTotal = 1024;
//*p[dwReceivedTotal] = 0;
MessageBoxA(0, p, "", 0);
GlobalUnlock(hgl);
break;
}
// delete stream and close handles
if (stream) stream->Release();
if (hRequest) WinHttpCloseHandle(hRequest);
if (hConnect) WinHttpCloseHandle(hConnect);
if (hOpen) WinHttpCloseHandle(hOpen);
system("pause");
}


zhupf 2013-07-02 14:44 鍙戣〃璇勮
]]>
欧美亚洲日本久久精品| 日产精品99久久久久久| 久久久久国产成人精品亚洲午夜| 日韩影院久久| 国产91色综合久久免费| 色偷偷91久久综合噜噜噜噜| 亚洲精品tv久久久久久久久| 国产高潮国产高潮久久久91 | 亚洲国产精品无码久久久久久曰 | 亚洲AV无码久久| 久久精品国产一区二区三区不卡| 伊人色综合久久天天网| 色综合久久88色综合天天| 97精品伊人久久久大香线蕉 | 日本久久久久久中文字幕| 午夜精品久久久久成人| 久久青青草原国产精品免费| 亚洲日本va中文字幕久久| 国产精品激情综合久久| 亚洲精品乱码久久久久久中文字幕 | 久久久无码精品亚洲日韩软件| 久久精品人成免费| 日韩人妻无码一区二区三区久久99| 久久99国产精品久久99| 国产成人久久精品一区二区三区| 精品国产乱码久久久久久呢| 国产亚洲色婷婷久久99精品91| 国产一级做a爰片久久毛片| 久久久久久久亚洲Av无码| 久久人人爽人人爽人人片AV麻烦| 久久久久人妻精品一区三寸蜜桃| 品成人欧美大片久久国产欧美| 久久久久亚洲AV成人片| 久久久久久无码Av成人影院| 国内精品久久久久久99| 国产综合久久久久| 777久久精品一区二区三区无码| 久久香蕉综合色一综合色88| 久久se精品一区精品二区国产| 久久综合久久综合久久综合| 久久成人永久免费播放|