Archive: Quoting problem with ExecWait on NT4


Quoting problem with ExecWait on NT4
I am fighting with a quoting problem in the 198 version when the created installer is run on NT4 systems. This problem was also present in older versions.

From my nsi file:

ExecWait '"$INSTDIR\install.bat" "$INSTDIR" "$8" "$9"'

The quotes are provided to deal with spaces in $INSTDIR. This works fine on W2K and XP, but the command is not executed and the error flag is set under NT4.

Is this a known bug? Is there any way to get a more detailed error message other than using the error flag? I'd like to find out what exactly fails here (other than "an error has happened" :-).


Additional Info
Further investigation shows that the second quote pair causes the problem.

Specifying

ExecWait '"$INSTDIR\install.bat" $INSTDIR'

executes correctly but fails if $INSTDIR contains spaces.

Has anyone a solution to this problem?


Extract this script on your desktop (dir has spaces!). Compile both and run executor.exe. It works for me very fine (Win2K). Maybe there is something else going on in your script. Please check it.

Good luck,
-Hendri.


Thanks, I'll try that.

But that will take time, as I'll go on holidays until mid July from tomorrow.

In the meantime, I did an ugly workaround by prohibiting filenames with spaces.


Using the test script, I think everything works fine. So it should be possible to have dirnames with spaces.

Have a nice holiday, good luck,
-Hendri.