In my previous post, I described why installers don’t do per-user setup. Do the same issues apply at uninstall time?
Yes, only more so. First, as with installation, the user directories may not be accessible to the installer. This can happen, as I’ve mentioned before, when using Windows roaming profiles.
Even if you could access the user directories you may not get to run any code to do the cleanup, anyway. On Mac OS, for example, the preferred uninstall method is simply dragging the application to the trash. There is no uninstaller to do any work.
Finally, it isn’t always clear what you should clean up, anyway. Clearly user documents should not be removed. What about preferences? If the user is done with an application forever—and they’re not going to reinstall it—then delete the preferences might be reasonable. But what if the application is going to get reinstalled right away? Or re-installed in a week or a month? Should the user preferences persist across the uninstall/reinstall? It isn’t clear.