{"id":815,"date":"2011-09-30T11:05:41","date_gmt":"2011-09-29T23:05:41","guid":{"rendered":"https:\/\/www.deltics.co.nz\/blog\/?p=815"},"modified":"2011-09-30T11:05:41","modified_gmt":"2011-09-29T23:05:41","slug":"something-the-xe2-uninstaller-should-tell-you","status":"publish","type":"post","link":"https:\/\/www.deltics.co.nz\/blog\/posts\/815\/","title":{"rendered":"Something the XE2 Un\/Installer Should Tell You&#8230;"},"content":{"rendered":"<span class=\"span-reading-time rt-reading-time\" style=\"display: block;\"><span class=\"rt-label rt-prefix\">[Estimated Reading Time: <\/span> <span class=\"rt-time\"> 2<\/span> <span class=\"rt-label rt-postfix\">minutes]<\/span><\/span><p>If you are about to install update #1 for Delphi XE2, the first thing you will need to do is <b>un<\/b>install your current version.  But beware &#8211; the uninstaller <i>doesn&#8217;t tell you something quite important<\/i>.<br \/>\n<!--more--><br \/>\nWhen uninstalling a folder in the XE2 Program Files area (&#8220;InstallAware&#8221;) cannot be deleted, presumably because it contains the installer files that the uninstaller needs\/is using.  So this folder is instead marked for deletion at shutdown\/restart.<\/p>\n<p>Consequently, if you attempt to run the XE2 Update #1 installer and install into the same location, you will get a cryptic &#8220;Permission Denied&#8221; error when it tries to create\/write into this folder.<\/p>\n<p>This had me chasing all sorts of file, folder, user, administrator, elevation issues &#8211; all in vain.  When all that was needed was to shutdown and restart before attempting the new install.<\/p>\n<p>The most annoying thing is that error occurs someway into the installation process.<\/p>\n<p>Very frustrating.<\/p>\n<p>imho the <b>un<\/b>install should tell you that a restart is needed to complete the uninstall.  Failing that, the <b>in<\/b>staller should tell you &#8211; at the start &#8211; that a previous <b>un<\/b>install is still in progress and that the installer cannot proceed until you have restarted.<\/p>\n<p>I am sure I have seen other product installers do this and hopefully it is something that the bundled InstallAware product will allow us to incorporate in our own installers should it be necessary, and Embarcadero simply forget to utilise the feature in their own installer.<\/p>\n<p><i><b>Disclaimer:<\/b>  This has happened to me twice in two different VMs &#8211; once when uninstalling the trial version to install the full version (which I put down to bad luck\/some screw up on my part) and now again when installing update #1 (yeah, yeah:  Fool me once, shame on you.  Fool me twice&#8230; I shoulda known better!)  \ud83d\ude42<\/p>\n<p>On both occasions running the installer elevated AND in an admin user account.  So whilst this may not be a universal problem it seems common enough that others may encounter it, but I do not have any other concrete examples of other users having the same trouble.  Yet.<\/i><\/p>\n","protected":false},"excerpt":{"rendered":"<p><span class=\"span-reading-time rt-reading-time\" style=\"display: block;\"><span class=\"rt-label rt-prefix\">[Estimated Reading Time: <\/span> <span class=\"rt-time\"> 2<\/span> <span class=\"rt-label rt-postfix\">minutes]<\/span><\/span>If you are about to install update #1 for Delphi XE2, the first thing you will need to do is uninstall your current version. But beware &#8211; the uninstaller doesn&#8217;t tell you something quite important.<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"jetpack_post_was_ever_published":false},"categories":[4,143],"tags":[],"class_list":["post-815","post","type-post","status-publish","format-standard","hentry","category-delphi","category-xe2-delphi"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/p1TKYv-d9","jetpack_sharing_enabled":true,"jetpack-related-posts":[],"_links":{"self":[{"href":"https:\/\/www.deltics.co.nz\/blog\/wp-json\/wp\/v2\/posts\/815","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.deltics.co.nz\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.deltics.co.nz\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.deltics.co.nz\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.deltics.co.nz\/blog\/wp-json\/wp\/v2\/comments?post=815"}],"version-history":[{"count":1,"href":"https:\/\/www.deltics.co.nz\/blog\/wp-json\/wp\/v2\/posts\/815\/revisions"}],"predecessor-version":[{"id":816,"href":"https:\/\/www.deltics.co.nz\/blog\/wp-json\/wp\/v2\/posts\/815\/revisions\/816"}],"wp:attachment":[{"href":"https:\/\/www.deltics.co.nz\/blog\/wp-json\/wp\/v2\/media?parent=815"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.deltics.co.nz\/blog\/wp-json\/wp\/v2\/categories?post=815"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.deltics.co.nz\/blog\/wp-json\/wp\/v2\/tags?post=815"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}