This website uses cookies. By clicking Accept, you consent to the use of cookies. Click Here to learn more about how we use cookies.
Turn on suggestions
Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.
- Revenera Community
- :
- InstallShield
- :
- InstallShield Forum
- :
- Yeah
Subscribe
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Subscribe
- Mute
- Printer Friendly Page
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Oct 15, 2007
07:59 PM
Long pause when returning from a UninstallApplication
Hi,
I just upgraded from IS12 to IS2008. After the upgrade, I noticed when I uninstall an application from installscript. It takes a long time (about 10 to 20 secs) to return from the UninstallApplication call.
I use the call below:
UninstallApplication(,"/clone_wait",LAAW_OPTION_WAIT);
It used to work fine in IS12... anyone come across this or have any ideas on how to fix this?
Thanks
I just upgraded from IS12 to IS2008. After the upgrade, I noticed when I uninstall an application from installscript. It takes a long time (about 10 to 20 secs) to return from the UninstallApplication call.
I use the call below:
UninstallApplication(
It used to work fine in IS12... anyone come across this or have any ideas on how to fix this?
Thanks
(10) Replies
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Oct 15, 2007
09:10 PM
I'm sorry I don't have any constructive advice for you, but I just wanted to say that I noticed this as well.
Furthermore, when uninstalling through Control Panel's Add/Remove, there's a similar delay not only when the progress bar reaches the end, but when the Add/Remove window re-populates to reflect that the software you just uninstalled is now gone from the list.
Furthermore, when uninstalling through Control Panel's Add/Remove, there's a similar delay not only when the progress bar reaches the end, but when the Add/Remove window re-populates to reflect that the software you just uninstalled is now gone from the list.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Oct 16, 2007
11:21 AM
Yeah... its a problem... does any one know how to get around this?
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Oct 16, 2007
08:39 PM
Could this be related to the /CLONE_WAIT switch? I have noticed considerable slow down when using this switch. Would the LAAW option to wait for a child process work for you instead.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Oct 16, 2007
09:35 PM
Is this what you mean? Today I tried the lines below:
RegDBGetUninstCmdLine (, uninstallstring);
LaunchAppAndWait(uninstallstring, "",0);
WaitForApplication( LAAW_PROCESS_INFORMATION.hProcess, 0, INFINITE, LAAW_OPTION_WAIT_INCL_CHILD | LAAW_OPTION_WAIT );
It behaved the same way. Its like the wait function is not working properly. It doesn't seem to know that the launched app has finished.
Again this wasn't a problem with IS12. Once I switched to IS2008 this started happening... kinda frustrating
RegDBGetUninstCmdLine (
LaunchAppAndWait(uninstallstring, "",0);
WaitForApplication( LAAW_PROCESS_INFORMATION.hProcess, 0, INFINITE, LAAW_OPTION_WAIT_INCL_CHILD | LAAW_OPTION_WAIT );
It behaved the same way. Its like the wait function is not working properly. It doesn't seem to know that the launched app has finished.
Again this wasn't a problem with IS12. Once I switched to IS2008 this started happening... kinda frustrating
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Oct 16, 2007
10:12 PM
Do you see the uninstall processes actually finish and drop of the task manager, and then have to wait for the LaunchAppAndWait function to return?
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Oct 16, 2007
10:50 PM
Thanks for always responding and trying to help.
I do see the spawned setup.exe in the taskmanager.. there are 2 that get spawned. Is that normal? Then when I hit the finish button on from SDFinish (when going through the setup of the app I'm trying to uinstall), it seems like the app doesn't exit for about 20 secs. It stays in the taskmgr for about 20 secs after I hit finish.. then pops off.
Do I have to call something to make sure the app exits right away when I hit hte finish button?
I do see the spawned setup.exe in the taskmanager.. there are 2 that get spawned. Is that normal? Then when I hit the finish button on from SDFinish (when going through the setup of the app I'm trying to uinstall), it seems like the app doesn't exit for about 20 secs. It stays in the taskmgr for about 20 secs after I hit finish.. then pops off.
Do I have to call something to make sure the app exits right away when I hit hte finish button?
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Oct 17, 2007
12:24 AM
by using "WaitForApplication" the delay seems to be only 10 secs (as opposed to about 20).. and only 1 setup.exe spawns (instead of 2 ..I assume because I don't use clone_wait). It seems like it has to wait 10 secs for each setup.exe to kill itself.
If I use WaitForApplication I'm having trouble telling whether the spawned uinstall completed or aborted. I tried LAAW_PARAMETERS.nWaitResult and always get a -1.
Either way this delay is strange.
If I use WaitForApplication I'm having trouble telling whether the spawned uinstall completed or aborted. I tried LAAW_PARAMETERS.nWaitResult and always get a -1.
Either way this delay is strange.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Oct 17, 2007
07:49 AM
You are correct, CLONE_WAIT is causing the two setups. My guess is that the delay is caused by the installer cleaning up after itself before it terminates. Removing the CLONE_WAIT should cut this time in half becuase you will only have one process running, but I'm not sure what can be done about the wait in either case.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Oct 17, 2007
11:11 AM
Do you know of way using the "waitforapplication" method to tell if the uninstall was aborted or completed? I tried checking against nWaitResult, but it always gives me a -1.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Oct 17, 2007
02:49 PM
UninstallApplication (and LaunchApp, LaunchAppAndWait, etc) doesn't know if the uninstall was successful, it just knows whether the uninstall was launched successfully. If the user canceled the uninstall process, you will still get a successful result from UninstallApplication.
Rather than relying on nWaitResult, after the uninstall you can use RegDBGetUninstCmdLine to check if the program is still installed.
Rather than relying on nWaitResult, after the uninstall you can use RegDBGetUninstCmdLine to check if the program is still installed.