Hi there,
I believe that your issue is that you run 16 child process with run command regarding Autoit3wrapper.exe :
$PID=Run($BaseDir & "TMP2_ReRun_MissingFiles.exe " & $sFileNameNPath & " " & $FileCnt,"",@SW_SHOW, $STDERR_CHILD + $STDOUT_CHILD)
And i bet that you are running some 3rd party application in the second script.
If you what a "process free exit program" you have to get control on the exit of your child processes, and exit the main script just when other processes are over.
Cheers