{"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=\"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=\"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_post_was_ever_published":false,"jetpack_publicize_message":"","jetpack_is_tweetstorm":false,"jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":[]},"categories":[4,143],"tags":[],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/p1TKYv-d9","jetpack_sharing_enabled":true,"jetpack-related-posts":[{"id":803,"url":"https:\/\/www.deltics.co.nz\/blog\/posts\/803\/","url_meta":{"origin":815,"position":0},"title":"Update #1 for XE2 &#8211; Get it here!","date":"28 Sep 2011","format":false,"excerpt":"You may have heard that the first of the promised frequent updates for XE2 has already arrived. If, like me, your first instinct was to reach for the \"Check for Updates\" option in your XE2 installation you may then have been confused to be told there were no updates. That's\u2026","rel":"","context":"In &quot;Delphi&quot;","img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":843,"url":"https:\/\/www.deltics.co.nz\/blog\/posts\/843\/","url_meta":{"origin":815,"position":1},"title":"XE2 Update #4 On The Horizon","date":"19 Jan 2012","format":false,"excerpt":"The release notes for Update #4 have appeared online, signalling the imminent arrival no doubt of the update itself. The good news if you are using FireMonkey is that this is a significant update, including functionality for printing. The bad news is that like update #1, this update is not\u2026","rel":"","context":"In &quot;Delphi&quot;","img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1974,"url":"https:\/\/www.deltics.co.nz\/blog\/posts\/1974\/","url_meta":{"origin":815,"position":2},"title":"Improved Quality in Delphi &#8211; Yeah Right","date":"28 Oct 2013","format":false,"excerpt":"Here in Aotearoa there is a beer company called \"Tui\", named in turn for a native bird. As well as a series of TV ads voiced by the great Tom Baker, Tui are famous here for their \"Yeah, right!\" billboard ads. I felt compelled to make one for Delphi. I\u2026","rel":"","context":"In &quot;Delphi&quot;","img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.deltics.co.nz\/blog\/wp-content\/uploads\/tui.png?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":760,"url":"https:\/\/www.deltics.co.nz\/blog\/posts\/760\/","url_meta":{"origin":815,"position":3},"title":"Platform Independence Version Dependencies in the XE2 RTL","date":"14 Sep 2011","format":false,"excerpt":"So I have spent about a week now with XE2 and FireMonkey and thought I would share some of the experience so far. After an initial peek and poke around, the first order of business for me was to migrate some of my existing code to the new RTL. First\u2026","rel":"","context":"In &quot;Delphi&quot;","img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":936,"url":"https:\/\/www.deltics.co.nz\/blog\/posts\/936\/","url_meta":{"origin":815,"position":4},"title":"A Pain In The Butt","date":"31 Jul 2012","format":false,"excerpt":"This post is one of those classic double-entendres for which us Brits are (in)famous, involving as it does both an actual Pain In The Butt and a euphemistic one. I have been incapacitated recently by a sudden onset of sciatica caused - so my physio seems to think - by\u2026","rel":"","context":"In &quot;Delphi&quot;","img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":791,"url":"https:\/\/www.deltics.co.nz\/blog\/posts\/791\/","url_meta":{"origin":815,"position":5},"title":"Why Does My OSX FireMonkey App Think It Is a Console App ?","date":"15 Sep 2011","format":false,"excerpt":"Because System.IsConsole is hardwired to TRUE on MAC OS: This is actually also the case for $ifdef LINUX, but nobody is likely to notice that, at least not just yet. :) But it caused me no end of confusion when my FireMonkey app behaved one way on Windows and a\u2026","rel":"","context":"In &quot;Delphi&quot;","img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"_links":{"self":[{"href":"https:\/\/www.deltics.co.nz\/blog\/wp-json\/wp\/v2\/posts\/815"}],"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}]}}