I'm creating an installer that silently uninstalls previous versions of certain applications installed on a machine. Those products use Installshield.
Here's my problem. When I run an ExecWait statement for the silent uninstall of the products, ExecWait moves to the next line prematurely. This is because Installshield installers and uninstallers spawn a couple of windows during their processes.
My question is this. How can I successfully wait for the silent uninstall to finish before moving on? I can't use a Sleep statement because that's just masking the problem and times vary based upon the individual machines I'm working with.
At any rate, here's my ExecWait code.
ReadINIStr ${TEMP1} "$PLUGINSDIR\test.ini" "Field 3" "State"
${If} ${TEMP1} == "1"
ExecWait '"C:\Program Files\InstallShield Installation Information\${guid}\setup.exe" /w /s /f1$PLUGINSDIR\uninstall.iss /runfromtemp /l0x0409 /removeonly'
${EndIf}Thanks for any input!