I still find it strange that you couldn't call a file or program to run in parallel while letting the main exe to continue.
You can. I do that in several of my scripts. A number of my scripts call other programs to produce md5 hashes of the installer, or create an iso file with the installer and other files.
The last few lines of one of my nsi's look like this:
# create the iso file and its md5
!define ISOFile "${LanguageSuffix}_${VersionMajor}${VersionMinor}_OPSManual"
!system 'start wscript.exe "${BUILDDIR}\MakeIso.vbs" "${SRCDIR}" "${ISOFile}" ${INSTALLER_NAME}'
The MakeIso vbscript starts while makensis.exe is still running, and in fact has not yet written the setup.exe. The vbscript waits for makensis to exit, then does its work with the setup.exe
Sub WaitForMakeNSIS()
Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2")
Do
Set colProcesses = objWmiService.ExecQuery("SELECT * FROM Win32_Process WHERE Name='MakeNSIS.exe'" )
ProcessIsActive = cBool(colProcesses.Count > 0)
If ProcessIsActive Then Wscript.Sleep 250
Loop While ProcessIsActive
End Sub
I've left out most of the vbscript, and didn't show my !defines, but this should be enough for you to duplicate it.
Don