@MrCreatoR, I'm posting here because it just may be my issue and not the UDF.
In my post of /ErrorStdOut from within ?, did not get any answers by now and looking around found your OnAutoItErrorRegister and even tho wasn't the approach I was looking for ( actually, I open a feature request for my understanding of what is needed ), it does what I wanted, that is, not to have more running instances just to catch a possible error, that by now I got good at avoiding but nevertheless, I'm not exempt of.
The issue I found is on a WinXP SP3, ( as my script may end up in a legacy PC, it works fine on Win7 ) and after the error is catched and reported accordingly, the PID hangs and after a few seconds it gives me the "AutoIt3.exe has encountered a problem and needs to close." window. I even tried ProcessClose(@AutoItPID) on exit but to no avail. Maybe the _WinAPI_UnhookWindowsHookEx() part does not unhook ?, no clue.
I'm hoping that you revisit the code, running on a WinXP, and find a workaround. I really hope what I have requested is possible.
Edit: 35 minutes after: ProcessClose(@AutoItPID) at the point in the code, the true exit I choose, in my _MyErrorHandler(), does do the trick.