Just a quick note. To find our what causes a start program issue you can check the %_SB_ERRORCODE% and %_SB_RETURNEX% variable values (see attached).
And always set the "Wait for Program" option if you need a return status. Selecting this option will cause the installer to be suspended until the external program has finished. If this option is not chosen, the script will continue to run while the external program finishes. If the script will use information created or gathered by the external program, this option is required for the script to complete successfully.
Friedrich