VBGood网站全文搜索 Google

搜索VBGood全站网页(全文搜索)

VB爱好者乐园(VBGood)

 找回密码
 立即注册
搜索
楼主: 西门吹雪

[原创] [全网首发]VB6实现真正的稳定的多线程(异步调用式,亲测稳定)!!!

[复制链接]
发表于 2015-9-11 17:02:34 | 显示全部楼层
本帖最后由 inat 于 2015-9-11 17:15 编辑
西门吹雪 发表于 2015-9-11 16:44
1.创建50个线程的确是需要50个对象的,所以我一般都是直接用AsyncControl控件,这样可以支持控件数组,很 ...


1.OCX就是可以破解的?不明白是已经破解了还是要怎么才能破解,我看补丁只破了DLL的.
2.我就是用的CloseWorker(True)来关闭,很简单的用10个线程,在线程里就用一个MSGBOX弹出个对话框,一般只能关闭1-3个就卡住了,界面完全卡死这种,不能强制关闭掉工作者.

上传一个简单例子,试下就知道了,代码应该没什么问题(未打包OCX).

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

点评

回复的贴子在33楼哦  发表于 2015-9-20 03:20
这点评字数太少,我还是专门回个贴在后边吧。  发表于 2015-9-20 03:08
另外,使用TerminateThread函数也可强制关闭而且不会卡死,但在再次使用控件CreateWorker并且执行AsyncCall调用的时候,会发生自动化错误。  发表于 2015-9-20 03:04
强制关闭工作者的确会导致卡死,这个是库的问题,但这都是在工作者对象正在执行代码的时候进行强制关闭而发生的,最合理的办法就是使用他提供的CancelObject来实现协调式的关系,而不是强制关闭。  发表于 2015-9-20 03:02
回复 支持 反对

使用道具 举报

发表于 2015-9-11 19:50:26 | 显示全部楼层
inat 发表于 2015-9-11 17:02
1.OCX就是可以破解的?不明白是已经破解了还是要怎么才能破解,我看补丁只破了DLL的.
2.我就是用的Close ...

OCX确实没有被patch。
但是OCX是否需要破解就不知道了。
刚才打算破解下ocx,但是没地方下手。
dll是VC开发的,ocx是VB写的,想根据反汇编上下文找切入点都不行。
回复 支持 反对

使用道具 举报

发表于 2015-9-11 20:27:09 | 显示全部楼层
bxc1995 发表于 2015-9-11 19:50
OCX确实没有被patch。
但是OCX是否需要破解就不知道了。
刚才打算破解下ocx,但是没地方下手。

只有等西门吹雪兄来回答了,他长期这个肯定知道的.
另外不能强制关闭工作者太麻烦了,稍有意外就卡住,也不知道他们是怎么解决的,还是都没这意外~

点评

你在什么地方调用CloswWorker的?是AsyncControl的事件里吗?  发表于 2015-9-15 16:07
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-9-14 21:53:24 | 显示全部楼层
inat 发表于 2015-9-11 20:27
只有等西门吹雪兄来回答了,他长期这个肯定知道的.
另外不能强制关闭工作者太麻烦了,稍有意外就卡住,也不 ...

OCX也是会一起破解的,亲
回复 支持 反对

使用道具 举报

发表于 2015-9-15 12:16:00 | 显示全部楼层
西门吹雪 发表于 2015-9-14 21:53
OCX也是会一起破解的,亲

后面看出来了,OCX不需要破解,但会依赖DLL,所以只破解DLL就行了.
但是DLL不能放在中文路径,还不能强制关闭工作者,对我来说就没用了,也许某一些情况下会比较有用.
回复 支持 反对

使用道具 举报

发表于 2015-9-15 15:27:44 | 显示全部楼层
我想说,用activex exe做多线程,可以不是多进程!用activex exe做主程序,比如word,excel等,都是这样的

点评

相比之下,我认为Thread Facotry的会好用一些。这对工程的类型没有要求,进行封装的时候也更方便。  发表于 2015-9-15 16:06
回复 支持 反对

使用道具 举报

发表于 2015-9-15 15:30:17 | 显示全部楼层
回复 支持 反对

使用道具 举报

发表于 2015-9-15 20:51:23 | 显示全部楼层
想不到还有人在研究这东西呀,这个我很早以前就在研究了,确实是目前最完美解决VB多线程的方案
有时间我把自己的实例也上传上来大家一起研究,我也一直在找中文帮助,现在无意中让
回复 支持 反对

使用道具 举报

发表于 2015-9-15 20:55:15 | 显示全部楼层
哈哈,想不到原来还有在研究这个呀,我很早以前就在研究这全控件了,它确实是目前最完美解决VB多线程的方案
有时间我把我的一些实例也上传上来大家一起研究。
一直在找这个的中文帮助说明,好久都没上论坛了,没想到这次上来无意中看到了这个帖子.太好了,看看楼主翻译得怎么样。
楼主看来是个VB的忠实爱好者,和我一样,一直都没放弃它。

点评

翻译得很生硬,不要见笑,过段时间我有时间再加点我自己的注解,让文章看起来更容易懂一些吧。不过对于你有经验的来讲,可以直接跳过啦,哈哈。一起加油。VB是很强大的,其实做很多事都够用的。  发表于 2015-9-16 14:38
回复 支持 反对

使用道具 举报

发表于 2015-9-19 08:28:21 | 显示全部楼层
感谢楼主分享啊!我也是一个忠实的VB粉丝啊!
目前还是用VB6来做主导开发哦,苦B啊!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

文字版|手机版|小黑屋|VBGood  

GMT+8, 2022-5-29 03:20

VB爱好者乐园(VBGood)
快速回复 返回顶部 返回列表