- 浏览: 245728 次
文章分类
- 全部博客 (395)
- Tech (0)
- [随笔分类]心情 (95)
- [随笔分类]技术 (112)
- [随笔分类]管理心得 (13)
- [随笔分类]Code SOP (5)
- [随笔分类]望图知意 (11)
- [网站分类]1.首页原创精华.NET区(包含架构设计、设计模式)(对首页文章的要求:原创、高质量、经过认真思考并精心写作) (8)
- [随笔分类]重构代码 (1)
- [随笔分类]童童 (2)
- Program (1)
- [随笔分类]看你知道不知道 (1)
- [网站分类]4.其他技术区 (31)
- [网站分类]3.非技术区(技术之外的文章,但不要涉及任何政治内容) (21)
- [网站分类]9.求职招聘区(个人求职、企业招聘) (0)
- [随笔分类]昨日关注 (15)
- [网站分类]6.读书区(技术书籍阅读心得、书籍推荐) (3)
- [随笔分类]一步一个脚印 (2)
- [网站分类]网站管理区(网站管理方面的疑问、建议、意见, 寻求管理员帮助) (1)
- [网站分类]2..NET新手区(用于发表不合适发表在首页的.NET技术文章,包括小经验、小技巧) (3)
最新评论
昨天看了鸟食轩的文章构建一个pool来管理无刷新页面的xmlhttp对象 ,自己用VB6实现了一下,结果出现了一点小问题,总结一下。
代码:
Form:Form1
Option Explicit
Private Pools As HttpPool
Private Sub Command1_Click()
Dim o As MSXML2.XMLHTTP
Set o = Pools.GetObject()
Dim Handler As MyReadyStateHandler
Set Handler = New MyReadyStateHandler
Handler.ini o
o.OnReadyStateChange = Handler
o.open "GET", "Http://localhost/js/message.htm", True
o.send
Set Handler = Nothing
End Sub
Private Sub Form_Load()
Set Pools = New HttpPool
End Sub
Private Sub Form_Unload(Cancel As Integer)
Set Pools = Nothing
End Sub
Class:HttpPool
Option Explicit
Dim Pool As Collection
'没有考虑池容量
Public Function GetObject() As MSXML2.XMLHTTP
Dim i As Integer
Dim o As MSXML2.XMLHTTP
For i = 1 To Pool.Count
Set o = Pool(i)
If o.readyState = 4 Or o.readyState = 0 Then
o.abort
GoTo ExitLabel
End If
Next
Set o = New MSXML2.XMLHTTP
Pool.Add o
ExitLabel:
Set GetObject = o
Debug.Print Pool.Count
End Function
Private Sub Class_Initialize()
Set Pool = New Collection
End Sub
Private Sub Class_Terminate()
Dim i As Integer
For i = 1 To Pool.Count
Pool(i).abort
Next
Set Pool = Nothing
End Sub
Option Explicit
Dim p As XMLHTTP
Sub OnReadyStateChange()
If p.readyState = 4 Then
Debug.Print p.responseText
End If
End Sub
Class:MyReadyStateHandler
Public Sub ini(o As XMLHTTP)
Set p = o
End Sub
在原先的JavaScript的代码中没有黄色代码对应的语句,因此在VB6的调试过程中一点一个XMlHttp对象被用过后readyState状态一直是4,所以就不在触发OnReadyStateChange事件了,因此responseText只能显示一次,以后就无法工作了,最后加上o.abort一切搞定。
发表评论
-
启动NDuiker项目
2005-01-20 17:05 434今天是进驻博客园的第一天,在这里安家真的很不错,十分感谢DuD ... -
NDuiker项目第2天总结
2005-01-21 08:53 631昨天晚上基本上实现了 ... -
NDuiker项目第3天
2005-01-22 22:50 565今天是周六了,原本以为是很轻松的一天,结果只有到了这个时 ... -
NDuiker项目第6天
2005-01-25 16:50 551这几天好忙,也好累呀,这几天是公司项目收尾的阶段,忙的都透不过 ... -
对.Net 类库的一点思索
2005-02-02 09:29 582这些天主要在测试GDI+的 ... -
测试一个网站的想法
2005-02-05 17:07 525由于项目的需要,测试了一下“上海研发公共服务平台” 登录:ht ... -
项目建议书编写总结
2005-02-25 15:46 747昨天完成了项目建议书的编写工作,整个春节期间的工作到今天全部完 ... -
MyIE 增加了RSS功能
2005-02-28 09:54 546今天更新了MyIE,发现MyIE增加了RSS功能,试用了一下, ... -
www.beihua.edu.cn计划摘录
2005-02-28 14:11 758www.beihua.edu.cn工作计划 1:网站后期制作计 ... -
网站调研资料记录
2005-03-01 15:56 604资料整理备忘 1:内外网IP确认 ... -
静静的看书
2005-03-08 17:18 551这几天还是很忙,但是似乎好了很多,因为目前主要是写一个基于Sm ... -
我的Smart Client 的学习笔记
2005-03-09 15:35 1655User Interface Process (UIP) Ap ... -
研发、开发、运营
2005-03-25 12:15 618这些天很忙,网络也不争气,才刚刚好一点。 ... -
当需求变更来临
2005-04-30 14:26 519昨晚已经和老婆安排好5 ... -
重新登录Window2003的域
2005-05-12 09:58 664今天公司要求重新登录Windows2003的域,记录一下,以后 ... -
当不愿意写字得时候
2005-05-16 15:36 678做项目得前期分析得时候,我还是比较喜欢在本子上写写、画画得,通 ... -
远离技术的时候
2005-06-20 11:05 399这一个月一直在忙一个项目,现在项目的可研报告也 ... -
Asp.Net 中使用客户端Activex控件需要注意的事情
2005-08-13 12:57 926案例:Asp.Net +VB制作的Activex控件 操作系统 ... -
Office开发中的测试的与众不同之处
2005-08-22 14:29 677今天修改了一下自己以 ... -
大家确实都很忙
2005-08-27 08:20 710先谈几个技术问题: 1 ...
相关推荐
vb实现xmlhttp获取网络数据功能。
以前写的一个xmlhttp提交数据的类模块,能有效地解决xmlhttp组件卡死问题,可用于,制件网络投票程序,网络信息收集程序
VB使用XMLHTTP实现Post与Get的方法
VB XMLHTTP 支持大文件分段与断点下载函数,可实现断点续传
利用VB通过xmlhttp进行数据库远程管理
支持gb2312和utf-8 双流网(HTTP://510122.COM)提供
主要介绍了VB使用XMLHTTP实现Post与Get的方法,有一定的借鉴价值,需要的朋友可以参考下
利用XMLHTTP技术实现中文和日文在线翻译。本程序主要以 http://www.excite.co.jp 网站的在线翻译功能为基础,用VB模仿浏览器的提交过程将需要翻译的文本提交给网页,然后分析网页返回结果,并将其结果返回到文本框内...
应用VB的XMLHTTP,自己抓包后编出来的软件.
XMLHTTP类模块源码,易语言原代码,使用模块
VB无需控件仅使用Microsoft.XMLHTTP判断程序是否联入互联网
VB判断地址是否存在的XMLHTTP方法
XmlHttp.Open "GET", "http://www.baidu.com", False'这里可以用POST和GET,不过POST更好些,得到的网页始终最新 XmlHttp.send getHtmlStr = StrConv(XmlHttp.ResponseBody, vbUnicode) Set XmlHttp = Nothing ...
用VB通过XMLHTTP和ADODB.Stream读取HTML有用内容,-彻底解决繁体简体等乱码问题
ASP.NET后台代码实现XmlHttp跨域访问
XmlHttp手册XmlHttp手册XmlHttp手册XmlHttp手册XmlHttp手册
爬虫程序怎样获取web网页的cookie,并且完整获取cookie困扰了我很久才弄出来。这里分享给大家
使用XMLHTTP POST 方式,实现远程请求
你是否想了解VB的精华所在?本书就是你的选择!
Visual Basic 6 处理Json源码,使用方便,网络数据传输应用