scottmax
12th August 2003 00:17 UTC
If I start an application during uninstall, uninstall freezes at end
Hi Guys,
In my uninstall process, I restart HotSync.exe. If I use 'Add/Remove Programs' to do the uninstall, the uninstall freezes at the end until I exit out of HotSync.exe. Then it finishes normally.
I have tried everything I can think of. It doesn't matter how I restart HotSync.exe, if it is still running when the uninstaller finishes, I'm hosed.
Any ideas? This doesn't happen with InstallShield.
Thanks,
Scott Maxwell
PocketPurchase, Inc.
Joel
12th August 2003 01:03 UTC
Are you using ExecWait?
Try the others Exec's...
scottmax
12th August 2003 01:17 UTC
Not using ExecWait. The normal way to do it is to just call `HsSetAppStatus(HsRestart,0);'. This is a Palm call to restart HotSync.exe. If you run the uninstaller outside of Add/Remove, it does appear to finish and removes itself from the task list. 'Add/Remove Programs' just gets stuck when it is done.
I have also tried exec and CreateProcess. In CreateProcess, I tell it to be a separate process. Same results no matter what I try.
Andrew Francis
12th August 2003 09:29 UTC
I've had similar problems with Hotsync when removing a conduit. I suspect it has something to do with with the Add/Remove Programs monitoring of the files under the directory you're uninstalling from (however it does that size estimate), perhaps because typically you're removing your conduit DLL and/or program-specific copies of the Palm DLLs.
(EDIT: I remove the conduit by calling out to Palm's PCI.exe rather than using a plugin, so I'm fairly confident it's not my fault.)
I never found a solution, and had to resort to the brute force method: before uninstallation just kill Hotsync altogether (FindWindow "KittyHawk" "Hotsync Manager", then SendMessage hwd 48837 1 0), and afterwards tell the user they'll have to restart Hotsync Manager themselves, or restart their computer :/