本帖最后由 luren666 于 2015-12-30 23:11 编辑
这个是论坛里面一个多线程的UDF的源码 "CoProc.au3"里面的.直接把带 $iOldRunErrorsFatal 的几行注释掉,应该就可以了吧,我测试里面自带的几个例子可以运行起来。Func _CoProc($sFunction = Default, $vParameter = Default)
Local $iPid;, $iOldRunErrorsFatal
If IsKeyword($sFunction) Or $sFunction = "" Then $sFunction = "__CoProcDummy"
;$iOldRunErrorsFatal = Opt("RunErrorsFatal", 0)
EnvSet("CoProc", "0x" & Hex(StringToBinary ($sFunction)))
EnvSet("CoProcParent", @AutoItPID)
If Not IsKeyword($vParameter) Then
EnvSet("CoProcParameterPresent", "True")
EnvSet("CoProcParameter", StringToBinary ($vParameter))
Else
EnvSet("CoProcParameterPresent", "False")
EndIf
If @Compiled Then
$iPid = Run(FileGetShortName(@AutoItExe), @WorkingDir, @SW_HIDE, 1 + 2 + 4)
Else
$iPid = Run(FileGetShortName(@AutoItExe) & ' "' & @ScriptFullPath & '"', @WorkingDir, @SW_HIDE, 1 + 2 + 4)
EndIf
If @error Then SetError(1)
;Opt("RunErrorsFatal", $iOldRunErrorsFatal);
Return $iPid
EndFunc ;==>_CoProc
|