用InternetOpen下载小文件 vc c++
2010-11-17 16:24
405 查看
#include "stdafx.h"
#include<windows.h>
#include<wininet.h>
#include<iostream.h>
#pragma comment(lib,"wininet.lib")
void
main()
{
DWORD
byteread=0;
char
buffer[100];
memset(buffer,0,100);
HINTERNET internetopen;
internetopen=InternetOpen("Testing"
,INTERNET_OPEN_TYPE_PRECONFIG,NULL,NULL,0);
if
(internetopen==NULL)
{
cout<<"Internet open failed!"
<<endl;
return
;
}
HINTERNET internetopenurl;
internetopenurl=InternetOpenUrl(internetopen,"http://dt.163.com/images/news/0605/news02053101_5.jpg"
,NULL,0,INTERNET_FLAG_RELOAD,0);
if
(internetopenurl==NULL)
{
cout<<"Internet open url failed!"
<<endl;
goto
there;
}
BOOL
hwrite;
DWORD
written;
HANDLE
createfile;
createfile=CreateFile("c://sss.jpg"
,GENERIC_WRITE,0,0,CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL,0);
if
(createfile==INVALID_HANDLE_VALUE)
{
cout<<"Create File failed!"
<<endl;
goto
next;
}
BOOL
internetreadfile;
while
(1)
{
internetreadfile=InternetReadFile(internetopenurl,buffer,sizeof
(buffer),&byteread);
if
(byteread==0)
break
;
hwrite=WriteFile(createfile,buffer,sizeof
(buffer),&written,NULL);
if
(hwrite==0)
{
cout<<"Write to file failed!"
<<endl;
goto
here;
}
}
cout<<"Finished downloading!"
<<endl;
here:
CloseHandle(createfile);
next:
InternetCloseHandle(internetopenurl);
there:
InternetCloseHandle(internetopen);
}
#include<windows.h>
#include<wininet.h>
#include<iostream.h>
#pragma comment(lib,"wininet.lib")
void
main()
{
DWORD
byteread=0;
char
buffer[100];
memset(buffer,0,100);
HINTERNET internetopen;
internetopen=InternetOpen("Testing"
,INTERNET_OPEN_TYPE_PRECONFIG,NULL,NULL,0);
if
(internetopen==NULL)
{
cout<<"Internet open failed!"
<<endl;
return
;
}
HINTERNET internetopenurl;
internetopenurl=InternetOpenUrl(internetopen,"http://dt.163.com/images/news/0605/news02053101_5.jpg"
,NULL,0,INTERNET_FLAG_RELOAD,0);
if
(internetopenurl==NULL)
{
cout<<"Internet open url failed!"
<<endl;
goto
there;
}
BOOL
hwrite;
DWORD
written;
HANDLE
createfile;
createfile=CreateFile("c://sss.jpg"
,GENERIC_WRITE,0,0,CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL,0);
if
(createfile==INVALID_HANDLE_VALUE)
{
cout<<"Create File failed!"
<<endl;
goto
next;
}
BOOL
internetreadfile;
while
(1)
{
internetreadfile=InternetReadFile(internetopenurl,buffer,sizeof
(buffer),&byteread);
if
(byteread==0)
break
;
hwrite=WriteFile(createfile,buffer,sizeof
(buffer),&written,NULL);
if
(hwrite==0)
{
cout<<"Write to file failed!"
<<endl;
goto
here;
}
}
cout<<"Finished downloading!"
<<endl;
here:
CloseHandle(createfile);
next:
InternetCloseHandle(internetopenurl);
there:
InternetCloseHandle(internetopen);
}
相关文章推荐
- 用InternetOpen下载小文件 vc c++
- 用InternetOpen下载小文件 vc c++
- 用InternetOpen下载小文件 vc c++
- (转)用InternetOpen下载小文件 vc c++
- C++ VC socket 文件下载 简单
- C++ HTTP协议 下载文件
- VC/MFC(C++)实现文件拷贝和文件删除等
- C++ http socket 文件上传和下载 FILE写文件失败
- VC下载文件
- c/vc/c++ 将文件保存到mysql数据库(longblob类型)
- [C/C++] 各种C/C++编译器对UTF-8源码文件的兼容性测试(VC、GCC、BCB)
- 如何添加有新扩展名的文件,使之能当作C/C++源文件而被VC编译处理
- C++通过http下载二进制文件
- VC设置cookies实现文件刷下载量
- 在VC9.0中实现C++模板类头文件和实现文件分离的方法
- 从FTP下载文件(C++,Win32)
- 【转】c++ http下载文件
- C++文件上传、下载工具
- VC2010 + C++ + OpenCV 项目开发环境搭建 —— OpenCV 无法打开包括文件 找不到头文件问题
- VC设置cookies实现文件刷下载量