| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 543 人关注过本帖
标题:VFP获取网络信息为什么会卡?
只看楼主 加入收藏
LJY6813
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2008-9-18
结帖率:0
收藏
已结贴  问题点数:10 回复次数:4 
VFP获取网络信息为什么会卡?
在登陆表单的INIT里写入如下语句,用于获取网络上的天气信息:
Local lcRemoteUrl,lcRemoteFile,lcLocalFile

lcRemoteFile="http://www. &&CHXX0008表示:北京
lcLocalFile = "&CWLSPATH/weather.txt"
Declare Integer DeleteUrlCacheEntry In Wininet.Dll String szUrl
Declare Integer URLDownloadToFile In urlmon.Dll Integer pCaller,String szURL,;
    String szFileName,Integer dwReserved,Integer lpfnCB
*=DeleteUrlCacheEntry(lcRemoteUrl) &&清理缓存

If URLDownloadToFile(0,lcRemoteFile,lcLocalFile,0,0)<>0
    Messagebox('读取数据失败!',48,'信息提示')
    Return
Endif
但是在执行时,遇到网络慢的时候,会卡上好长时间,而且不能操作其他WINDOWS程序,会使VFP程序无法响应,问各位大侠有什么好办法?我看到DOEVENTS命令,它能否能解决,但是怎么应用,请给举例讲讲。
还有一个问题,就是上面的程序在6.0和9.0里执行会有差别呢,在6.0里会先显示表单,然后等待程序获取天气信息,而在9.0里会先获取天气信息,获取完再显示表单,这是为什么呢?
搜索更多相关主题的帖子: 天气 北京 网络 信息 清理 
2015-05-14 22:34
hu9jj
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:红土地
等 级:贵宾
威 望:400
帖 子:11783
专家分:43421
注 册:2006-5-13
收藏
得分:4 
VFP是单线程的,不能同时做两件事,必须一件一件地处理,所以就会“卡”。

活到老,学到老!http://www.(该域名已经被ISP盗卖了)E-mail:hu-jj@
2015-05-15 08:10
LJY6813
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2008-9-18
收藏
得分:0 
回复 2楼 hu9jj
呵呵,你也在这里,那有什么办法解决不,比如那个DOEVENTS命令,或者是计时器控件
2015-05-15 11:52
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:4 
晓得使用这类API,就应该查阅了完整的资料满足需求再用。像这类http API,一定有异步函数和方法,我没用过,但凭道理上就知道一定有,自己查吧。

授人以渔,不授人以鱼。
2015-05-15 11:56
千分之
Rank: 2
等 级:论坛游民
帖 子:28
专家分:17
注 册:2015-5-16
收藏
得分:4 
路过
2015-05-18 14:40
快速回复:VFP获取网络信息为什么会卡?
数据加载中...
 
   



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

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