Random Thoughts – Randocity!

iTunes 8 never installs or upgrades, requests to reboot over and over in Vista

Posted in itunes bugs by commorancy on December 15, 2008

[UPDATE: 9/15/10]

This issue is back (without the rebooting part) in iTunes 10 and Windows 7. Please see my most current post describing how to resolve this issue. Note, the information contained in the article below is here for historical value only. Please see my latest post describing how to fix the most current issue with iTunes 10 and Windows 7. -Brian

[UPDATE: 10/28/09]

As an update to this Randosity article, I have upgraded my system to Windows 7 and then installed iTunes 9.  Since making this change, I am no longer having the registry issue documented in this Randosity article. So, it may be worthwhile to upgrade your system to Windows 7 to alleviate this issue. Of course, it could be a fluke, but iTunes installed and started up without any issues on Windows 7. Before you upgrade, though, you’ll want to remove iTunes from your system, then run the upgrade to Windows 7, then reinstall iTunes 9. If you still experience registry issues with Windows 7 and iTunes 9, refer to this article for tips on what to do.

[UPDATE: 4/08/09]

Note: I’ve just found that the permissions issues resurface after the upgrade to the 8.1.1.10 version of iTunes.  If it happens to you, you will want to follow the instructions below to fix the permissions problems such as to enable the use of the itms protocol (the protocol that lets you get to iTunes URLs from your browser through the iTunes app).  Note that you may be able to uninstall iTunes and reinstall it with success.  However, I wasn’t able to do this on my system.  So, I had to utilize the instructions below.  Note also that when you use the Software Update tool under Windows that it will change the permissions back to being non-functional.  So, you will, again, need to follow the instructions below.

Note that I have simplified these instructions.

[END UPDATE}

What is this all about?

I ran into this iTunes problem on my Windows Vista 64 Home Premium installation.  If you have an iPod or an iPhone, this can be extremely frustrating.  I am also using the iTunes 64 bit version.  I spent probably 2-3 days poking around on the Internet for answers to this problem.  The answer is not as easy as one might have hoped.  This fix should work with all versions of Vista, but specifically works for Vista 64.  However, there is a solution.

So, let’s describe the problems you might encounter because of this issue:

  1. iTunes upgrades and asks you to reboot.  You reboot.  You try to start iTunes and a Windows Installer says ‘configuring’ again.  It asks you to reboot again.   You do this 2 -3 times and realize this is a dead end.  iTunes won’t start from the icon.
  2. You launch an itms, itmss or itpc protocol in your browser and the browser tells you there is no application associated with this protocol.
  3. Quicktime gives you an ActiveX error and won’t run.

There have been several proposed solutions to this issue.  The easiest being, go to your Program Files folder and create a shortcut from the iTunes.exe file to your desktop (or wherever).  While this first resolution does work and will let you play your music, it will only work to a degree.  It doesn’t fix Quicktime.  It also doesn’t fix the underlying issue and it doesn’t fix the browser launching problem described above.  For that, read on.

The Reason Behind this Issue

Feel free to skip to the The Solution below if you want to get started right away.

Windows Vista adds in much stronger security protections within Windows including Windows registry entries.  So, things tend to run as the psuedo user SYSTEM (sometimes called Local System) and also apparently some registry entries get installed as the SYSTEM user.  Note, the SYSTEM user is not an actual user.  So, you cannot log in as this user, nor can you easily use RunAs on this user.  Fret not, there is a way to get an interactive session with the SYSTEM user in Vista.  We’ll come to that under the solutions section.

With the release of Windows Vista, Microsoft has completely thwarted the idea of a superuser.  No longer is there a superuser on Windows Vista.  Because of this change, there are now permissions that can be set onto objects, things and registry entries that can even prevent Administrator (the once previous superuser) from getting access to that object within Vista.  That doesn’t mean that Administrator can’t ulimately get access to the object, it means that the initial permissions prevent it.  The superuser Administrator can still change the permissions and ownerships always, but the initial permissions prevent access.  In a truly superuser system, this should never happen.  There should always be a full superuser that always has access 100% of the time regardless of set permissions.  That’s the idea behind a superuser.   Thus, Microsoft has officially broken the Windows’ superuser.

The Broken Apple Problem

Because the superuser is now broken in Vista, there are registry entries that get placed (or replaced) as a result of Apple’s inept handling of the installation of iTunes (and probably Quicktime also).   So, entries get built with only SYSTEM user permissions.  No permissions are given to Administrator, Users or any other group or user on the system.  Because SYSTEM has such limited privileges (created specifically by MS to thwart privilege escalation exploits), the installer for iTunes (actually the Windows installer) cannot reset the broken permissions that  the initial installer created in the first place!

In other words, let’s say you’re logged in as your account named ‘beaners’.  The account ‘beaners’ is not allow access to read objects that are created by the SYSTEM user (where this object has no other permissions set).  Since your ‘beaners’ account doesn’t have permissions to SYSTEM created objects, your account gets ‘Access Denied’.  That would be fine if the object were intentionally supposed to be set this way.  However, because of Apple’s ineptness, the iTunes registry entries get set up this way.  So, your ‘beaners’ account again gets ‘Access Denied’ to these registry entries.  This breaks iTunes and is probably not what Apple intended.  In fact, the permissions for these registry entries should have been set so that all users have full control over these registry entries.  Yes, there is a Users group that includes all users of Windows.

This is a fairly serious and stupid mistake by Apple.

The Solution

As of 4/08/09, I have found that the reason the script didn’t work for me initially wasn’t related the administrator account.  Instead, it was the script itself being incomplete.  I have, therefore, included a lot more registry fixes for mostly iTunes, but it also includes many Quicktime registry entries.  Because of the fixed script, I am able to present a far easier methodology to get iTunes working.  As a result of fixing this script to work better, I was able to reduce this article down to only a few steps.

Actually, the solution relies on a script that ultimately resets the permissions on the iTunes and Quicktime registry entries to give Administrator and Users (the group described above) access to all of these entries.  The script must run as Administrator to be successful.  Therefore, you will need to use the ‘Run as administrator’ feature on the script.  This fix will not succeed if the script isn’t running as Administrator.

To proceed with this fix, you will need the following things:

  • Subinacl: Download ‘subinacl.exe’ from Microsoft here.
  • Reset.cmd: You can download the script from here.

Find your script where you downloaded it.  Make sure that subinacl.exe is in your path or place this subinacl.exe in the same directory with the script.  Next, right-click the reset.cmd file and choose ‘Run as administrator’ (see image below):

Run reset.cmd as Administrator

Run reset.cmd as Administrator

Once you run it as Administrator, it will open a command shell.  You may see the security warning below:

Security Warning

Security Warning

If you see the security warning, it is just asking you to confirm that this is what you really want to do.  Click the ‘Run’ button to run reset.cmd script.  Once it runs, it will open a command shell:

Command Shell Running Reset.cmd

Command Shell Running Reset.cmd

Press any key to begin the repair or close the window to abort.  If you want to see what the Reset.cmd command does before you run it, open it in Notepad.  You will see that it simply modifies the permissions on the registry keys associated with Quicktime and iTunes to allow Everyone to access these registry keys.  Once this task is completed, your iTunes will be repaired and functional.

Good luck and let me know if you have questions or if you have a success story.

Disclaimer:  You are responsible for your use of this information.  This information is provided as-is with no warranty expressed or implied.  Use the above information at your own risk.  You should always make system restore points or backups before making registry changes so you can restore your system in the event of unexpected problems.

8 Responses

Subscribe to comments with RSS.

  1. […] 9 and Windows 7 Posted in apple, itunes by commorancy on October 29, 2009 As an update to an earlier Randosity article, I have upgraded my system to Windows 7 and then installed iTunes 9.  Since making this change, I […]

    Like

  2. […] Vista problems.  If you are experiencing troubles using iTunes on Vista, please see my updated Randosity article on how to fix iTunes installation issues.  The fix has been simplified and works easily to resolve […]

    Like

  3. commorancy said, on April 8, 2009 at 1:56 pm

    I have simplified the instructions based on a new more extensive reset.cmd script that I’ve put together. After I recently upgraded to 8.1.1, the permissions were again hosed up. Since I have added nearly every iTunes and Quicktime registry entry, this script now fixes the problem easily and painlessly through the ‘Run as administrator’ feature and with only a few steps.

    Thanks.

    Like

  4. gvz said, on April 1, 2009 at 1:14 pm

    Thanks for your answer.

    Well, so far, everything seems to be working with my “simple” iTunes 8.1 install; the itms links are functional in IE7 and are indeed lauching iTunes 8.1. I could not find anything wrong so far, but I’ll make sure to report it here if I find something.

    Like

  5. gvz said, on April 1, 2009 at 10:01 am

    Thanks for this article.

    I had the same exact problem: trying to upgrade from iTunes 8.0 to iTunes 8.1 on a Vista 64 Home Premium installation. I also ran into problems with the iTunes installer and could not install iTunes 8.1, no matter what I tried, even after completely uninstalling iTunes 8.0.

    However, I found a solution that is much simpler than yours: after uninstalling iTunes 8.0, I went to the Apple website (http://www.apple.com/itunes/download/) and downloaded the 64-bit version of iTunes 8.1 from there. I was able to install iTunes 8.1 in 5 minutes without any problems, no warnings from the installer, and no need to reboot! (I chose “Run as administrator” just to be safe, but I don’t know if it mattered). I noticed that the “upgrade” version of the installer file for iTunes 8.1 (“iTunes64.msi”) has a much smaller size (40 MB) than the full download from the Apple website (“iTunes64setup.exe” – 70 MB), so I suspect that the upgrade version does not include all the files, which is probably why it does not work properly after uninstalling the older version. In any case, I think that this is a very straightforward solution to the iTunes/Vista installation problem. But I agree with you that Apple should do a better job with their Vista installer!

    Like

    • commorancy said, on April 1, 2009 at 12:38 pm

      Just to quell any questions. I didn’t have any errors during either 8.0 or 8.1 installation. It was only when it asked me to reboot did I realize something was wrong. With 8.1, I didn’t have any errors and it didn’t ask me to reboot over and over. In fact, as you said, it didn’t ask to reboot at all. I originally installed 8.0 from the download installer on Apple’s web site. I didn’t do this for 8.1, though. However, I had fixed my 8.0 through my method and the 8.1 installer reset all of the registry permissions.

      I suggest you test all of the functionality within your iTunes before you jump to the conclusion that your installation is 100% working. I thought the same thing about my 8.1 install until I found that certain functionality was no longer working. For example, if you click on a browser itms link, it should either ask to launch or launch iTunes. If it tells you the protocol is unrecognized, then you still have registry permissions issues. The only way around that is through my process, unfortunately. Yes, Apple does need to fix their Vista installer.

      Thanks.

      Like

  6. […] computers, corruption, ipod, itunes, music by commorancy on January 19th, 2009 As a follow up to this Randosity article, this article will focus on a specific condition when iTunes will corrupt your iPod’s music […]

    Like

    • Vanja said, on August 4, 2009 at 7:37 am

      Thanks a lot for this article. Thank goodness for savvy people like you to help us mere mortals steer around the nightmare that Apple and MS have created and now hold us all in their deadly grip. My daughter bought a new IPhone which of course required an upgrade to Itunes…. the rest is history as they say. Thanks to this article we now have it all working and have steered around the admin rights issues. Thanks again.

      Like


Comments are encouraged under these rules: 1. No personal attacks allowed. 2. Comments with personal attacks will not be posted. 3. Please keep your words civil. Thank you for contributing!

This site uses Akismet to reduce spam. Learn how your comment data is processed.