WinInet类实现HTTP服务器文件下载,如何判断文件下载完成
时间:2011-12-15
来源:互联网
RT
作者: pudge20102011 发布时间: 2011-12-15
BOOL InternetReadFile(
__in HINTERNET hFile,
__out LPVOID lpBuffer,
__in DWORD dwNumberOfBytesToRead,
__out LPDWORD lpdwNumberOfBytesRead
);
最后一个参数得到的值为0,而且该函数返回true
__in HINTERNET hFile,
__out LPVOID lpBuffer,
__in DWORD dwNumberOfBytesToRead,
__out LPDWORD lpdwNumberOfBytesRead
);
最后一个参数得到的值为0,而且该函数返回true
作者: maoxing63570 发布时间: 2011-12-15
有一个HttpQueryInfo函数可以知道。
前段时间做过用 wininet 下载特定URL资源的功能。不过记得不太清楚了。
给你一个blog地址。
讲得非常详细!
C/C++ code
楼主给点分吧。。。
我已经没有分问问题了。。。
前段时间做过用 wininet 下载特定URL资源的功能。不过记得不太清楚了。
给你一个blog地址。
讲得非常详细!
C/C++ code
//查询content-length大小 dwContentLen = 0; dwSizeDW = sizeof(DWORD); bRet = HttpQueryInfo(hRequestHead, HTTP_QUERY_FLAG_NUMBER | HTTP_QUERY_CONTENT_LENGTH, &dwContentLen, &dwSizeDW, NULL); if (bRet) { //检查是否文件过大 if (dwContentLen > MAX_DOWNLOAD_BYTESIZE) { bRet = FALSE; goto _END_OF_DOWNLOADURL; } }
楼主给点分吧。。。
我已经没有分问问题了。。。
作者: gjt19910817 发布时间: 2011-12-15
上面那个dwContentLen就是文件的字节数了。。。
下载的时候判断一下是否和下载的字节数相同。
其实也不用那么复杂应该。
应为你下载需要读写文件。而读写文件的操作是“阻塞式”的。不下载完成是不会继续执行下面的代码的。
下载的时候判断一下是否和下载的字节数相同。
其实也不用那么复杂应该。
应为你下载需要读写文件。而读写文件的操作是“阻塞式”的。不下载完成是不会继续执行下面的代码的。
作者: gjt19910817 发布时间: 2011-12-15
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28