| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1175 人关注过本帖
标题:求助:文件下载时,进度条卡顿。
只看楼主 加入收藏
sdgzs
Rank: 1
等 级:新手上路
帖 子:22
专家分:0
注 册:2012-11-23
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:5 
求助:文件下载时,进度条卡顿。
进度条在30时下载文件,这时进度条卡住。怎样改进能在下载时进度条不卡呢,不说大神支招多谢帮助。
VB6.0.rar (1.52 KB)
搜索更多相关主题的帖子: 文件 进度条 改进 
2022-10-12 08:27
约定的童话
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:56
帖 子:246
专家分:1442
注 册:2021-8-1
收藏
得分:10 
图片附件: 游客没有浏览图片的权限,请 登录注册
60%左右停顿2秒,然后继续下载,整体还算流畅....
2022-10-12 08:45
sdgzs
Rank: 1
等 级:新手上路
帖 子:22
专家分:0
注 册:2012-11-23
收藏
得分:0 
能否用代码改进不让卡顿。
2022-10-12 08:56
吹水佬
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:451
帖 子:10607
专家分:43186
注 册:2014-5-20
收藏
得分:10 
因定时器(Timer)不是多线程过程,只是主线程中的消息过程,而且优先级较低。
可以在 URLDownloadToFile 最后一个参数(回调函数)中处理
 
2022-10-12 14:45
sdgzs
Rank: 1
等 级:新手上路
帖 子:22
专家分:0
注 册:2012-11-23
收藏
得分:0 
这个没有接触过,能帮写一下代码吧
2022-10-12 15:20
吹水佬
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:451
帖 子:10607
专家分:43186
注 册:2014-5-20
收藏
得分:0 
回复 5楼 sdgzs
URLDownloadToFile的最后一个参数要构建一个IBindStatusCallback接口对象
有个第三方的类型库 olelib.tlb 可以实现 IBindStatusCallback 接口对象实例
但使用类型库 olelib.tlb,因是第三方的东东,存在维护和分发外部依赖的问题

建议:调用 windows 的 wininet.dll API
主要调用:
InternetOpen 和 InternetOpenUrl 开始下载
HttpQueryInfoLong 获取内容长度
重复调用 InternetReadFile 将数据读入缓冲区(如使用128k缓冲区),将数据写入文件并随时更新进度条。

也可以考虑多线程或多进程来实现

2022-10-13 07:57
快速回复:求助:文件下载时,进度条卡顿。
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.020002 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved