First off, great job, multi-tasking has been the No.1 headache for me in autoit and this looks like its going to solve quite a bit. Second, I'm a little confused about how this works. (not how to work it ) I think I understand how it works for an uncompiled script. Except, I don't see where in Func _CoProc($sFunction = Default, $vParameter = Default) it does anything to tell the new process what to execute. I'm figuring it has to do with what is set using EnvSet, however, it appears to me that you are just calling a plain Jane AutoIt process without doing anything. Unless the autoit.exe processes or expects things like CoProc to be defined. Perhaps I'm just missing something simple or over complicating the whole thing. Wont be the first time. EDIT: I've figured most of my questions out.