VB 支持多线程的DLL,大家研究下看能否用在Au3
在CSDN找到的,功能很强大,是以对象方式使用的,看使用该DLL的朋友反馈还不错,有网友在vb Script 中调用好像也行。所以抓过来请大家研究下,看能否用在Au3,官网地址:http://blog.csdn.net/Modest/archive/2008/05/08/2416967.aspxCSDN下载需要积分,不方便,因此将所需文件打包传上来了,见贴子下面。
使用前需要用regsvr32注册MT32.dll
以下是在VB中使用的源代码
Private WithEvents Thread As MT32.Thread
Private WithEvents Thread2 As MT32.Thread
Private Sub Form_Load()
Set Thread = New Thread
Set Thread2 = New Thread
End Sub
Private Sub Command1_Click()
Dim Params(1)
Params(0) = "0"
Params(1) = "1"
Dim g(2)
g(0) = 0
Thread.CreateThread Me, "mm1", Params
Thread2.CreateThread Me, "mm2", g
End Sub
Public Sub mm1(p)
Dim i As Integer
Dim Obj As Object
Set Obj = Thread.ThreadObject
For i = 0 To 5000
Obj.Text1.Text = i
Next
End Sub
Public Sub mm2(p)
Dim i As Integer
Dim Obj As Object
Set Obj = Thread2.ThreadObject
For i = 0 To 5000
Obj.Text2.Text = i
Next
End Sub
[ 本帖最后由 baikaifang 于 2009-3-18 19:51 编辑 ] :face (38): :face (38): :face (38): 呵呵,试试看哦。。 自己顶上去,等高手出马。 确定不能.........
回复 5# akmm88 的帖子
你尝试过了吗?真的不行! $obj=ObjCreate("MT32.Thread")$tH= $obj.CreateThread($obj,"th1",0,0,0)
ConsoleWrite($tH)
For $i=1 To 5000
ConsoleWrite($i&@CRLF)
Sleep(200)
Next
Func th1()
For $i=5000 To 10000
ConsoleWrite($i&@CRLF)
Sleep(200)
Next
EndFunc
提示不支持这种方法.
[ 本帖最后由 akmm88 于 2009-3-21 12:48 编辑 ] AU3的多线程,没办法啊只有死心了。:face (31): :face (32): autoit开源的...希望有高人改写下源码...咳咳.. 回去研究一下 http://www.planet-source-code.com/vb/scripts/ShowCode.asp?txtCodeId=26900&lngWId=1
回复 11# fzzywb 的帖子
谢谢了,这个听说过,也是VB用的,不知道可以可以用在AU3上面,只有继续等等看吧。 能否提供一下VBS源码调用!这样调式快多了! 等待高手解答! 不会,俺菜鸟一个,帮顶了
页:
[1]
2