急!VC实现HTTP下载文件方法,最好是源码

zhx2211 2009-07-15 10:00:41
急!VC实现HTTP下载文件方法,最好是源码
...全文
2508 22 打赏 收藏 转发到动态 举报
写回复
用AI写文章
22 条回复
切换为时间正序
请发表友善的回复…
发表回复
yuanbinvsshu 2011-04-26
  • 打赏
  • 举报
回复
用socket api200行都不到怎么写啊?望大虾指教 [Quote=引用 15 楼 ok1234567 的回复:]

使用SOCKET api写,全部代码也不会超过200行,从网上搜索示例代码加工加工(HTTP GET),以适应自己项目的特殊需要
最好不要使用封装的MFC类及其组件,很难控制,效率及体验堪忧,可以作为学习的例子,但不能用于真正的项目
[/Quote]
flygreen628 2009-11-13
  • 打赏
  • 举报
回复
ms,是PIM
ProgrammerNO1 2009-08-05
  • 打赏
  • 举报
回复
[Quote=引用 17 楼 danxuezx 的回复:]
C/C++ codeBOOL DownLoadFile(TCHAR* szURL)
{if(URLDownloadToFile(NULL,szURL,0,NULL)== S_OK)
{return TRUE;
}return FALSE;
}
[/Quote]


我用了这个,为什么还下载不了 ,头文件,库文件都加了
bylea 2009-08-05
  • 打赏
  • 举报
回复
                                    "GET 要下载的文件 HTTP/1.1\r\n" \
"Accept: */*\r\n" \
"User-Agent: Mozilla/4.0 (compatible; AAAA)\r\n" \
"Host: %s\r\n" \
"Pragma: no-cache\r\n" \
"Cache-Control: no-cache\r\n" \
"Connection: Keep-Alive\r\n" \


发送完请求了,第一接的是文件状态,如果没有错误的话,直接顺序接收后面的数据就可以了.


xy_dream 2009-07-18
  • 打赏
  • 举报
回复
URLDownloadToFile()就不错
beautyloveme 2009-07-17
  • 打赏
  • 举报
回复
提供一种方式
//strUrl是网址
CString GetHtmlString(CString strUrl)
{
CString strContent;

HINTERNET hNet = 0;
hNet = ::InternetOpen("MSDN SurfBear",
PRE_CONFIG_INTERNET_ACCESS,
NULL,
INTERNET_INVALID_PORT_NUMBER,
0) ;

if(NULL == hNet)
{
return strContent;
}

HINTERNET hUrlFile = ::InternetOpenUrl(hNet,
strUrl,
NULL,
0,
INTERNET_FLAG_RELOAD,
0) ;

if(NULL == hUrlFile)
{
InternetCloseHandle(hNet);
return strContent;
}

char buffer[1000000];
memset(buffer,0,1000000);
DWORD dwBytesRead = 0;
BOOL bRead;

DWORD iSize;

bRead = ::InternetReadFile(hUrlFile,
buffer,
sizeof(buffer),
&iSize);

buffer[iSize] = 0;

strContent += buffer;
while (iSize)
{
bRead = ::InternetReadFile(hUrlFile,
buffer,
sizeof(buffer),
&iSize);
buffer[iSize] = 0;

strContent += buffer;
}

InternetCloseHandle(hUrlFile);
InternetCloseHandle(hNet);

return strContent;
}

转自http://www.chendana.com/bbs/viewthread.php?tid=476
ok1234567 2009-07-17
  • 打赏
  • 举报
回复
使用SOCKET api写,全部代码也不会超过200行,从网上搜索示例代码加工加工(HTTP GET),以适应自己项目的特殊需要
最好不要使用封装的MFC类及其组件,很难控制,效率及体验堪忧,可以作为学习的例子,但不能用于真正的项目
mmxpp 2009-07-17
  • 打赏
  • 举报
回复

mark
danxuezx 2009-07-17
  • 打赏
  • 举报
回复
BOOL DownLoadFile(TCHAR* szURL)
{
if(URLDownloadToFile(NULL,szURL,0,NULL) == S_OK)
{
return TRUE;
}
return FALSE;
}
fengrx 2009-07-16
  • 打赏
  • 举报
回复
我的帖子里边已经有下载的代码了,楼主稍微修改下就能使用了。
http://topic.csdn.net/u/20090715/16/a51d1438-c25d-4cb5-8666-20b7eaca9b89.html

如果解决了,请顺便帮我看下我的问题:
http://topic.csdn.net/u/20090716/17/55969a50-7492-4700-a88a-700c58bd98f0.html
songtao_01 2009-07-15
  • 打赏
  • 举报
回复
你可以看看这个http://download.csdn.net/source/1260525
zhx2211 2009-07-15
  • 打赏
  • 举报
回复
我的电信项目。
udknight 2009-07-15
  • 打赏
  • 举报
回复
顺便问下,你这个是什么项目
udknight 2009-07-15
  • 打赏
  • 举报
回复
my GOd,有点象我以前的项目。既然下载的是XML文件这样的小文件,lz用URLDownloadToFile()足以。
zhx2211 2009-07-15
  • 打赏
  • 举报
回复
现在的问题是,客户端通过HTTP地址要发一个XML的请求文件,然后再获取服务端返回的XML文件
udknight 2009-07-15
  • 打赏
  • 举报
回复
URLDownloadToFile() 小文件还行,大文件经常出错
oyljerry 2009-07-15
  • 打赏
  • 举报
回复
API, URLDownloadToFile()
byxdaz 2009-07-15
  • 打赏
  • 举报
回复
这个里面有代码:
http://pcedu.pconline.com.cn/empolder/gj/vc/0508/693704.html
udknight 2009-07-15
  • 打赏
  • 举报
回复
源码:http://download.csdn.net/source/295939
zw0558 2009-07-15
  • 打赏
  • 举报
回复
顶一下
加载更多回复(2)

18,356

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧