wjz1128 发表于 2012-10-16 17:11:43

关于多线程的问题

用其他语言调用autoit的函数,例如移动窗体,把该函数放入线程函数中执行,若启动该线程的主线程被阻塞,那么该函数也会停住不执行,以C#代码为例:
new Thread(()=>
{
    new AutoItX3Class().WinMov("某某窗体","",50,50);
}).Start();
Thread.Sleep(10000);
先启动某某窗体,然后运行以上代码,某某窗体应该立即被移动到50,50的位置,但实际结果是等了10s才移动到指定位置,也就是说外面的Sleep阻止了上面的线程的运行,十分奇怪,但该线程里面如果调用SetWindowPos来移动窗体就不会这样,只要是autoit的函数就不行,不论什么,都会停止,大家帮帮忙,是不是有什么设置可以解决这个问题?

xms77 发表于 2012-10-16 21:46:56

C#调用autoit3的类函数,不懂啊!
页: [1]
查看完整版本: 关于多线程的问题