First of all check that the file exists. Even if your 100% sure it does, it's always a good check to make!
FormatMessage() will turn the return value into a string telling you what a function returned. I personally don't use it as I use the debugger, but it might help you!
nReturn = Is( FILE_EXISTS, sYourProgram );
MessageBox( "File Exist returns: " + FormatMessage( nReturn ), WARNING );
if ( nReturn = 1 ) then
nReturn = LaunchAppAndWait( sYourProgram, "", LAAW_OPTION_WAIT );
MessageBox( "LaunchAppAndWait returns: " + FormatMessage( nReturn ), WARNING );
Where abouts are you calling this bit of code? Are you certain it's called AFTER the file has been installed?
Let us know what the two calls return!