C++实现下载的代码
更新时间:2014年10月09日 10:26:49 投稿:shichen2014
这篇文章主要介绍了C++实现下载的代码,以下载百度图片为例较为完整的讲述了C++下载的具体实现方法,需要的朋友可以参考下
本文实例讲述了C++实现下载的方法,分享给大家供大家参考。
具体实现代码如下:
复制代码 代码如下:
#include <UrlMon.h>
#include <WinInet.h>
#pragma comment(lib,"wininet")
void CFileDownloadDlg::OnBnClickedBtnDownload()
{
// 使用UrlDownloadToFile函数
HRESULT hRet = URLDownloadToFile(NULL,"http://www.baidu.com/img/baidu_sylogo1.gif","c:\\temp\\1.gif",0,NULL);
if (S_OK != hRet)
{
MessageBox("下载失败");
return;
}
//使用windows internet 库
HINTERNET hSession = InternetOpen("", INTERNET_OPEN_TYPE_PRECONFIG, NULL, NULL, 0);
if (hSession != NULL)
{
HINTERNET hLink2 = InternetOpenUrl(hSession, "http://www.baidu.com/img/baidu_sylogo1.gif", NULL, 0, INTERNET_FLAG_DONT_CACHE, 0);
if (hLink2 != NULL)
{
BYTE temp[1024];
DWORD dwNum = 1;
FILE *hFile;
if ((hFile = fopen("c:\\temp\\2.gif", "wb")) != NULL)
{
while (dwNum>0)
{
InternetReadFile(hLink2, temp, 1024, &dwNum);
fwrite(temp, sizeof(char), dwNum, hFile);
}
fclose(hFile);
MessageBox("download finished...");
}
InternetCloseHandle(hLink2);
hLink2 = NULL;
}
InternetCloseHandle(hSession);
hSession = NULL;
}
}
#include <WinInet.h>
#pragma comment(lib,"wininet")
void CFileDownloadDlg::OnBnClickedBtnDownload()
{
// 使用UrlDownloadToFile函数
HRESULT hRet = URLDownloadToFile(NULL,"http://www.baidu.com/img/baidu_sylogo1.gif","c:\\temp\\1.gif",0,NULL);
if (S_OK != hRet)
{
MessageBox("下载失败");
return;
}
//使用windows internet 库
HINTERNET hSession = InternetOpen("", INTERNET_OPEN_TYPE_PRECONFIG, NULL, NULL, 0);
if (hSession != NULL)
{
HINTERNET hLink2 = InternetOpenUrl(hSession, "http://www.baidu.com/img/baidu_sylogo1.gif", NULL, 0, INTERNET_FLAG_DONT_CACHE, 0);
if (hLink2 != NULL)
{
BYTE temp[1024];
DWORD dwNum = 1;
FILE *hFile;
if ((hFile = fopen("c:\\temp\\2.gif", "wb")) != NULL)
{
while (dwNum>0)
{
InternetReadFile(hLink2, temp, 1024, &dwNum);
fwrite(temp, sizeof(char), dwNum, hFile);
}
fclose(hFile);
MessageBox("download finished...");
}
InternetCloseHandle(hLink2);
hLink2 = NULL;
}
InternetCloseHandle(hSession);
hSession = NULL;
}
}
希望本文所述对大家的C++程序设计有所帮助。
相关文章
VisualStudio2019配置OpenCV4.5.0的方法示例
这篇文章主要介绍了VisualStudio2019配置OpenCV4.5.0的方法示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2021-03-03
C++编程使用findfirst和findnext查找及遍历文件实现示例
这篇文章主要为大家介绍了C++编程如何使用findfirst和findnext查找及遍历文件实现示例,有需要的朋友可以借鉴参考下,希望能够有所帮助2021-10-10


最新评论