问题
I have created a patch for my product using Installshield. When I apply the patch the product files get updated successfully. However, when trying to uninstall the patch it uninstalls or removes successfully the newly added dlls to the patch from the target m/c, but somehow some dlls or exe which got modified due to the patch are not reverting back upon uninstallation of the patch.
When I see the version, date and time of some of the dlls are the date on which patch was applied and also the version remains the new one after uinstallation of the patch. that means dlls are not getting reverted back.
Can someone please help to understand why some of my dlls are not getting reverted back upon patch uninstallation. I have followed the patch uninstall rules properly.
回答1:
Open a Command Prompt (as Administrator), and run the command
sfc /scannow
Maybe this would help
回答2:
Hi I got the solution upon patch uninstall why some components(dlls) are not getting reverted back. that is because there is custom action in my project which was causing the issue which was not allowing the Feature in which my component(dll) to re installed upon patch uninstall.
the log was saying as MSI (s) (1C:EC) [17:14:50:054]: Feature: ALLDLLS; Installed: Local; Request: Local; Action: Local Where it should be re installed instead of Local in request and action statement. So I have modified the custom action and the result is
MSI (s) (1C:EC) [17:14:50:054]: Feature: ALLDLLS; Installed: Local; Request: Reinstall; Action: Reinstall
which in turns also reverted the Components or dlls those were not getting reverted.
来源:https://stackoverflow.com/questions/24948387/patch-uninstall-not-working-properly-developed-using-installshield