webbrowser 与 VB多线程

northwolves 2009-05-31 04:41:29
vb6.0 如何在同一窗体上使用5个WEBBROWSER 多线程同时分别加载:
https://forum.csdn.net/BList/VB
https://forum.csdn.net/BList/Delphi
https://forum.csdn.net/BList/BCB
https://forum.csdn.net/BList/CPP
https://forum.csdn.net/BList/VC

...全文
224 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
Tiger_Zhao 2009-06-01
  • 打赏
  • 举报
回复
WebBrowser 是通过 IE 内核来进行加载的,各个下载是独立的线程,但是如果你的主线程的异步消息响应中产生了阻塞,导致无法响应其它异步消息,那么相应的下载线程会产生等待。
嗷嗷叫的老马 2009-06-01
  • 打赏
  • 举报
回复
由于是官方方案,稳定性自不用说.

只是拥有VB6下多线程编程经验的人并不多,很多问题还得自己摸....



嗷嗷叫的老马 2009-06-01
  • 打赏
  • 举报
回复
只要工程里面不使用MDI窗体的话,就可以使用ActiveX EXE方式编译,这是VB6提供多线程的标准方式------单元模型线程.

这种模式里使用CreateObject创建的对象是处于另一线程内的(需要在工程属性里设置"每个对象对应一个线程").

具体代码:

http://www.m5home.com/blog/article.asp?id=54

不过大部分人都不熟悉这种方法,甚至都不知道VB6的标准多线程方案,因此能否发挥得好又是另一个问题了.....
goosen 2009-05-31
  • 打赏
  • 举报
回复
关注
qingye2008 2009-05-31
  • 打赏
  • 举报
回复
我有多线程的dll,谁要call我
神马都能聊 2009-05-31
  • 打赏
  • 举报
回复
是否ActiveX下,WebBrowser都是多线程运行的,但确实和VB的多线程关系不大.

另外,WebBrowser窗体关闭以后,产生的线程也没有销毁,不知道为啥..
一笑拔剑 2009-05-31
  • 打赏
  • 举报
回复
必须要说一下
webbrower是控件
所以即使他能够同时下载多个页面
也和vb自身的多线程关系不大
你还是把你自己的要求说一下
看看你的目的到底是什么,如果只是同时显示4个网页的话
估计webbrower是可以完成的
lyserver 2009-05-31
  • 打赏
  • 举报
回复
比如:
Me.WebBrowser1.Navigate2 "https://forum.csdn.net/BList/VB"
Me.WebBrowser2.Navigate2 "https://forum.csdn.net/BList/VC"
当执行Me.WebBrowser1.Navigate2 "https://forum.csdn.net/BList/VB"时,VB并不暂停运行等待WebBrowser1的加载,而是马上执行下一句的Me.WebBrowser2.Navigate2 "https://forum.csdn.net/BList/VC",这两个WebBrowser的文档加载由WebBrowser内部的线程进行处理,与VB的主线程是异步进行的,由WebBrowser控件在加载过程中往VB线程投递消息,VB线程的消息泵再根据消息的排队顺序进行响应。
所以,楼主不需要过多考虑,只管用就行了。
一笑拔剑 2009-05-31
  • 打赏
  • 举报
回复
不可以的

你单form肯定不可能完成多线程的

你只有用activex或者网上哪个很不稳定的多线程vb代码

否则没戏
一笑拔剑 2009-05-31
  • 打赏
  • 举报
回复
vb什么时候能多线程了
看看先
lyserver 2009-05-31
  • 打赏
  • 举报
回复
由于WebBrowser本身支持多线程下载,当你使用5个WebBrowser,其实这5个WebBrowser的导航地址是同时下载的。
vbman2003 2009-05-31
  • 打赏
  • 举报
回复
顶...

1,502

社区成员

发帖
与我相关
我的任务
社区描述
VB 网络编程
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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