通过Proxy下载文件
来源:互联网 发布:网络言论自由案例2017 编辑:程序博客网 时间:2024/04/19 06:56
一段从CSDN论坛帖子中摘录的代码
//Download http file through proxy
CString GeHttpFile(const char *url)
{
CString szContent;
char strProxyList[MAX_PATH], strUsername[64], strPassword[64];
//in this case "proxya" is the proxy server name, "8080" is its port
strcpy(strProxyList, "proxya:8080");
strcpy(strUsername, "myusername");
strcpy(strPassword, "mypassword");
DWORD dwServiceType = AFX_INET_SERVICE_HTTP;
CString szServer, szObject;
INTERNET_PORT nPort;
AfxParseURL(url, dwServiceType, szServer, szObject, nPort);
CInternetSession mysession;
CHttpConnection* pConnection;
CHttpFile* pHttpFile;
pConnection = mysession.GetHttpConnection(szServer,
INTERNET_FLAG_KEEP_CONNECTION,
INTERNET_INVALID_PORT_NUMBER,
NULL, NULL);
pHttpFile = pConnection->OpenRequest("GET", szObject,
NULL, 0, NULL, NULL,
INTERNET_FLAG_KEEP_CONNECTION);
//here for proxy
INTERNET_PROXY_INFO proxyinfo;
proxyinfo.dwAccessType = INTERNET_OPEN_TYPE_PROXY;
proxyinfo.lpszProxy = strProxyList;
proxyinfo.lpszProxyBypass = NULL;
mysession.SetOption(INTERNET_OPTION_PROXY, (LPVOID)&proxyinfo, sizeof(INTERNET_PROXY_INFO));
pHttpFile->SetOption(INTERNET_OPTION_PROXY_USERNAME, strUsername, strlen(strUsername)+1);
pHttpFile->SetOption(INTERNET_OPTION_PROXY_PASSWORD, strPassword, strlen(strPassword)+1);
pHttpFile->SendRequest(NULL);
DWORD nFileSize = pHttpFile->GetLength();
LPSTR rbuf = szContent.GetBuffer(nFileSize);
UINT uBytesRead = pHttpFile->Read(rbuf, nFileSize);
szContent.ReleaseBuffer();
pHttpFile->Close();
delete pHttpFile;
pConnection->Close();
delete pConnection;
mysession.Close();
return szContent;
}
- 通过Proxy下载文件
- 通过Proxy访问http文件
- Fedora通过Http Proxy下载git
- 通过代理下载文件
- 通过 HttpClient 下载 文件
- 通过 HttpClient 下载 文件
- 通过 HttpClient 下载 文件
- 通过 HttpClient 下载 文件
- 通过NSURLConnection下载文件
- 通过url下载文件
- 通过url下载文件
- 通过URL下载文件
- 通过URL下载文件
- git 通过 https.proxy 下载github上的项目
- 通过SOCKET实现文件下载
- Java 通过 HTTP 下载文件
- 通过request实现文件下载
- Android: 通过URL下载文件
- 什么是IDL和MIDL
- 关于Cstring 类
- 找工作阶段性总结
- C++中虚析构函数的作用
- 着凉了,感冒了
- 通过Proxy下载文件
- jish
- 溢出专题……缓冲区溢出原理
- 程序和算法的真谛
- Exceptional C++ Style之15
- scanline
- winRAR做开机密码
- 在filter中關閉session
- 电脑主板的相关知识