Random Thoughts – Randocity!

Why does my iPhone/iPad sync all of my music every time?

Posted in Apple, itunes bugs, Mac OS X by commorancy on December 10, 2014

itunes_redI have a lot of music in my iTunes library that I have collected over the years. I also have several Apple devices such as an iPod, an iPad and two iPhones that I sync. Some people see my devices and think I have three phones. Even though it looks like a phone, one of them is an iPod. I carry the iPod for two reasons: 1) If the battery runs out on the iPod, I can still make calls. 2) I put only music on the device leaving my phone open for apps.

Though, that’s not really the problem. I also have multiple computers each running iTunes software and this is where the problems start. When I sync my iPod, it resyncs all 5000+ songs over and over again (takes far too long). Let’s explore.

iTunes and Media

Let’s understand the reason why iTunes resyncs a song to a device. The primary reason iTunes resyncs a song already on your iDevice is due to a change in song metadata. What is metadata? Metadata includes information such as play counts and last access times. It also includes other tag data such as artwork, title, artist, track number, duration, volume, etc. Basically, any changes to any portion of the IDtag associated with the song will force a resync to the device. Why is this important? It’s important because many households now have multiple computers.

For example, let’s say you purchased your brand spanking new Airport Extreme 3TB drive and you have now copied your entire iTunes library of music and movie files to to that network drive in hopes of sharing to your multiple computers. Nothing seems wrong with that, right? So, now all of the computers in your household will optimally share these same exact media files. Definitely a space saver, or so you thought. Yes, it may have solved your space issue, but now it has created an entirely new problem. That problem, last access times will change each time any of these computers sharing this folder play a song. Worse, when any single computer’s iTunes software instance updates to a new version, iTunes will scan the entire library of files. Let’s understand why this is a problem.

Shared Drives, iTunes and Last Access Times

When you have multiple computers accessing a single set of media on a shared network drive, this can lead to the multiple computers battling over which computer has last modified a specific song or movie. In some cases, as I said above, an iTunes instance might touch every file in the library. When other iTunes instances start, they will see the song last modify dates have changed from the last time it launched and mark the song to be downloaded to your device.

Let’s assume you have 3 computers in your household: one is yours, one is your spouse’s and one is your child’s. You have hooked each of these computers to a /Volumes/Music folder hooked to that brand spanking new Airport Extreme 3TB drive (where your media files now live), each of these computers will update the last file time access separately. Let’s say your spouse’s computer’s iTunes has gotten updated to a newer version. Each time an update happens, Apple ‘fixes’ the library to make it compatible with the newest version. This ‘fixing’ action touches every single file in the library and marks the last access updated.

So, you come along and plug in your iPhone to sync on your computer’s iTunes software (also sharing this same folder). Because every file has now been updated as a result of your spouse’s update to the latest iTunes version, your device will now download every song to your device. The same problem will happen when your child’s computer is updated.

How do I solve this problem?

The solutions aren’t as easy as one might hope. The easiest solution is to duplicate your entire library to a new folder and point your iTunes instance to that folder. Then do this again for your spouses computer and your child’s computer. Unfortunately, if your library is terabytes in size, this solution may not be practical. If your library is 100-200GB, that might be possible. This is really the best of all solutions. Once you separate your library into separately duplicated media folders, each iTunes instance will have exclusive access to its files only. This is the best of all worlds because the only iTunes computer that will update those files will be yours alone. This means that play counts and last access times will remain 100% accurate and are controlled exclusively by your iTunes computer. The same for your spouse and your child’s library set. The downside is that any new purchases made by your spouse will need to also be downloaded separately by you and by your child. Downloading from iTunes isn’t a problem today because they allow re-downloads from the cloud. But, it is somewhat of a hassle as what’s contained in each of the libraries will diverge.

In the case where you have a 1TB or larger sized library and this duplication solution is impractical, there is another alternative.

Home Sharing Server

Apple now offers the Home Sharing feature in iTunes. What this setup requires is a single system completely dedicated to the Home Sharing service. I might suggest, for practicality’s sake, to buy a new computer to dedicate iTunes to the Home Sharing server purpose. I might suggest a Mac mini or an iMac for this purpose, though you could just as easily use a Windows machine running iTunes. Let’s assume we’re using a Mac mini for this purpose as Mac mini’s are reasonably inexpensive and will serve this purpose perfectly. For performance reasons, I might also suggest a wired connection between the Mac mini and your shared library device (i.e., Airport Extreme 3TB). Your remote computers can access the Home Sharing library wirelessly.

This setup requires unwinding the shared drives mounted on each computer separately and abandoning that. Instead of sharing a network drive to each computer, you will now exclusively share that folder to the newly designated Home Sharing server. Then, share your iTunes library through Apple’s Home Sharing services within that Mac mini iTunes instance. This will then be the only machine that has direct access to your network drive media files. From here, you will then connect each of the other notebook computers and devices to this Home Sharing server to access playlists, music and movies.

How does this solve the problem? Because the single dedicated Home Sharing server has exclusive access to the files, only it will update metadata rather than having 3 or 4 or more computers competing to change file access times. It also means you only need to create your playlists once rather than on each computer separately. Now, a single set of playlists will reside on the Home Sharing server which can be managed centrally from that single computer.

Why is this not a perfect solution? Play counts. Because each computer accessing the Home Sharing server will update play counts for anything consumed, this can cause those songs with updated play counts to resync with your device each time your child or spouses listens to or watches a movie. On the other hand, the number of media that requires rsyncing will be substantially fewer than when each computer can potentially update every file in the library.

It is also not a perfect solution for syncing because you will need to sync your device with your Home Sharing server itself. Not the computer that’s consuming the Home Sharing library remotely. But, it will nearly eliminate the need to resync every file to your device each time you sync.

Can this be resolved by Apple?

Sure. But, it’s not something that will happen overnight. The reason this is a problem is because iTunes doesn’t fundamentally understand the concept of a multiuser environment. MacOS X does, but not iTunes. Apple has shoehorned in some pseudo multiuser features, but without fully supporting everything required for a multiuser environment. For example, to fully support multiple users on a Home Sharing library, each user would supply a set of unique credentials to identify themselves to get into the library which would then create a separate and unique profile for each user. Under that separate profile, iTunes could keep track of play counts separately for each user. In this way, what you play and what your spouse plays would be unique and different. So, if you synced your device against your user profile, your devices would only download those items that you had consumed with your device(s) only. Same for your spouse and for your child.

Implementing a full separately profiled multiuser system in iTunes is the only way to segregate devices and syncing. This is also the only way to prevent syncing extraneous songs after they have been played by someone else. Unfortunately, today this is not a reality.

Additional benefits that could come out of a multiuser system using individual profiles is parental controls. Each profile could then have a set of permissions to allow or disallow access to parts of the library. For example, if you had a playlist of R rated movies, you could set parental controls to lock out access to that playlist from children. A multiuser system offers a lot of benefits to parents for access controls in addition to solving the problem of re-syncing every song in the library to an iPhone or iPad.

If you would like to see such a feature added to iTunes in the future, I encourage you to visit Apple’s iTunes Feedback page and leave an enhancement request for a full multiuser and parental control system be added to iTunes Home Sharing feature.

Revert back to iTunes 10 from iTunes 11 (Mac Edition)

Posted in Apple, botch, business, itunes, itunes bugs by commorancy on February 27, 2013

[UPDATE 2015-01-17] New Article: How to make iTunes 12 look and act more like iTunes 10

Thanks to Danny Rolnick for this very detailed and helpful explanation and for his permission to post it here on Randosity. His steps came in as a comment. However, because my previous Randosity article on this topic was clearly geared toward Windows, I thought this one deserved its own topic, especially as thoughtful and well written as his comment was. So, without further adieu, here is Danny’s very detailed explanation on how to rock and roll back to iTunes 10 from iTunes 11, if you’re using Mac OS X.

To go back to iTunes 10, I am happy to show you the way — By Danny Rolnick

I happily regard myself an expert now on how to downgrade iTunes 11 back to 10 on a Mac. Having found a straightforward and logical way of doing so, I thought it my duty to share with others. I can’t express what a relief it is to have version 10 back again. See the method at the bottom. Feel free to jump down there if you want to get started. Let me know how you got on in the comments below.

My view on the experience I have had of using iTunes 11

I have been a mac obsessed devoted fan all my life (I’m 46), never used a PC and got my first mac back in 1988. Until just the past few months I wouldn’t hear anyone say anything derogatory about anything Apple. However, a few things are rocking my ‘religious like’ devotion. Most of all, I have been dumbfounded about issues of the recent iTunes evolution in version 11.

I am also obsessed with music, movies and music videos. It’s not just a hobby – I am a DJ and Video DJ by profession. iTunes, since the very first release, has been the backbone of the way I organize and store all my digital media. I never had any need to seek an alternative and have also enjoyed the integration it provides with my iPhone and other iDevices etc etc.

My library is huge. I don’t mean to brag but aside from my digital music collection of 40,000 + tracks, either purchased from the iTunes store or imported from my CD collection, my music video collection is over 10,000. I am a proficient iTunes user and I often have reason to need to re-tag my files within iTunes or sometimes I use MetaX.

Until now, I have never resisted installing any available Apple updates and even feel some excitement in anticipation of the improved features. etc. iTunes version 11 has changed all that now. iTunes 11 is, without question, an inferior version to 10. Anyone who feels otherwise is probably only using iTunes in a basic way, and for this reason I have always thought there was a market for a pro version of iTunes for people like me.

iTunes 11 simply doesn’t work

I click to play a track, click again because it hasn’t started and click another time.  Only then do I hear the track play. It takes ages to build links to external files, just as long as it takes to actually import them to the media folder. Tagging takes ridiculously long to the point you would need to leave the tagging to be done overnight. I could go on, but you are probably reading this because you have already experienced your own issues concerning version 11.

Before following the method below, I tried to seek alternatives to iTunes all together. I briefly tried Double Twist and Song Bird among many other software packages, but the truth is that iTunes is better for my personal purposes.

The most disappointing thing about version 11 is the silence from Apple about the obvious problems. It is this specific fact that has aggravated me so much. Maybe I am romanticizing, but I can’t help imagine that Steve Jobs would have ever let version 11 go as far as actually being released.

Steps to revert to iTunes 10 from iTunes 11

Here are the Stages and Steps for Mac OS X only. Thank you to Bogoss on MacForums for help with this article.

Stage 1 — Uninstall iTune11, Reinstall iTunes 10

Note: Any changes you have made to your music files since you used last used version 10 will be lost but any purchasses you have made in the time since can be downloaded again if you can’t find those purchasses in your media folder. If recently made playlists are of particular importance you could export the lists to somewhere for later.

  1. Back up your iTunes Folder(s) just in case.
  2. Download these apps
  3. Download iTunes 10.7 (last version before 11). Check your download folder, it might still be there. You can also get it from the 10.7 Apple Support Web Site (Click the big download button)
  4. Using AppZapper, simply uninstall iTunes 11. Before you drag the iTunes icon from the Application folder to the window you will need to open the preferences of AppZapper and deselect the box next to “Keep Apple applications safe”
  5. Open the 10.7 dmg file, you will see the pkg file (usually you would double click it to install), but now, this time drag it out somewhere (e.g. Desktop).
  6. Open Pacifist
  7. Drag the pkg iTunes 10.7 file to Pacifist and then click install from the menu bar
  8. During installation, click replace every time a window pops up.
  9. Installation finished, iTunes 10.7 is back!
  10. Don’t open it yet!!!!

Stage 2 — Recover your Library

See this video that explains the process to recover your library here:

  1. In FINDER – go to your iTunes Music Folder located in (Your User Account)=>Music=>iTunes
  2. Within it, open the folder called Previous iTunes Libraries.
  3. Identify the most recent backup. It has the date at the end.
  4. Duplicate it. Move it to the desktop.
  5. Rename it as ‘iTunes Library.itl’. Basically remove the date from the file name.
  6. Go back to your iTunes Folder and rename the file there which is already named ‘iTunes Library.itl’ to ‘iTunes Library.itl.old’.
  7. Now move the ‘iTunes Library.itl’ file from your desktop to this location.
  8. Now open iTunes 10.7. If it can’t find your iTunes library, select choose library and navigate the application to the new ‘iTunes Library.itl’ file you created.
  9. Breathe a sigh of relief, you’re done!
  10. Copy this and post it to help others. Only come back to me to say Thanks, not for more support.

Danny

Revert back to iTunes 10 from iTunes 11 (Windows Edition)

Posted in Apple, botch, itunes, itunes bugs by commorancy on December 27, 2012

[UPDATE 2015-01-17] New Article: How to make iTunes 12 look and act more like iTunes 10

If you’re looking for the Mac OS X downgrade steps, please check out this Randosity article. After giving iTunes 11 a fair shake, I have come to the conclusion that this version is so hopelessly broken that I just can’t deal with it any longer. So, I’ve decided to roll back to iTunes 10.

The iTunes 11 botch

It is very obvious that Tim Cook (and crew) are systematically undoing every ideal that Jobs held for Apple. iTunes 11 is no exception. With its missing menus, unnecessary drop down menus, haphazard interface, missing Radio link (well, not missing, but moved to a hard-to-find area), huge graphical album listings and no easy way to set art on music any more, the whole iTunes 11 release is one big botch. Well, the last straw came today when I tried importing a CD. It imported fine until I stopped it because I realized the import settings were wrong. When I attempted to restart the import, iTunes 11 would only begin at the next track and refused to replace the existing, something that iTunes 10 does quite nicely. When I put a second CD into my second drive, the whole app locked up. Then, I killed it with task manager. On startup, it proceeded to lock up Windows and prevent me from working with the desktop. I’ve never had this issue with iTunes 10. Worse, playlist metadata is now stupidly globally linked. Meaning, if you uncheck a song in one playlist and it exists in other playlists, it unchecks the song there too. So, now checkboxes are global settings across the whole of iTunes. That’s just some of the underwhelming, but major changes in iTunes 11. I’ve had it with iTunes 11 and all of its stupid new quirks.

Rewriting that much of an app is really a gamble and this is one gamble didn’t pay off. I’ve heard some people seem to like some of the changes. I’m not one of them. Seriously, what was the benefit to changing the interface that radically for no end-user payoff? I mean, at least give us users some kind of a bone to endure that kind of radical change. There just isn’t any reward for dealing with this massive of a change. All we get is whole lot of learning curve, fighting through bugs, dealing with stupidity in UI design all without any substantial ease of use improvements.

Restoring iTunes 10

Well, I finally made the decision to revert back to iTunes 10. The first problem was locating the most recent version of iTunes 10. Thankfully, Apple Support keeps older iTunes versions online (or at least, they’re there now). So, if you are thinking of reverting back to iTunes 10, you might want to grab your copy now before they take it down. But, keep in mind that once you’ve upgraded to iTunes 11, your ‘iTunes Library.itl’ (What are the iTunes library files?) file will be updated to the latest format which is incompatible with iTunes 10. So, you will have to restore back to an older version of library.itl or possibly face rebuilding your entire media library from files on disk.

Steps to revert on Windows:

  • Download iTunes 10 from the above link
  • Start->Control Panel->Programs and Features
  • Make note of the iTunes 11 ‘Installed On’ date.
  • Uninstall iTunes 11
  • Install iTunes 10
    • Don’t start iTunes 10 at this point or you will receive an error stating that library.itl was created by a newer version. Continue on with the steps below.
  • Go to C:\Users\<your user>\Music\iTunes
  • Rename ‘iTunes Library.itl’ to ‘iTunes library.iTunes11.itl’ (in case you want to revert back using this file)
    • Note the space in the name
  • Copy the most recent backup of ‘iTunes Library.itl’ or of a date just before you installed iTunes 11
    • Copy C:\Users\<your user>\Music\iTunes\Previous iTunes Libraries\library.<date>.itl to
    • C:\Users\<your user>\Music\iTunes\library.itl
    • If you don’t have a backup copy, you can simply delete ‘iTunes Library.itl’, but you’ll probably have to rebuild your media library from scratch. Deleting this file doesn’t delete your music, it will just remove iTunes’ reference to it.
    • If you have a ‘iTunes Music Library.xml’, you may be able to import that to rebuild your library more easily.
    • You should regularly export your library as ‘iTunes Music Library.xml’ anyway in case iTunes ever gets corrupted.
  • Once you have iTunes 10 installed and ‘iTunes Library.itl’ recovered, you can start up iTunes 10. Assuming the ‘iTunes Library.itl’ was a backup created by iTunes 10, it should start just fine. If it doesn’t, keep recovering older ‘iTunes Library.<date>.itl’ backup files until you find one that works.

Now you’ll want to review your library to ensure that any new music you’ve bought or added is there. If not, you’ll have to add the folders of that music to this library.

Note, if you have changed where your library.itl resides, you will have to rename it there instead. If you haven’t modified iTunes in this way, library.itl will be in the above location (or whichever drive is your Windows boot drive letter).  Simply deleting the file, iTunes may be smart enough to pull its most recent backup copy, but I haven’t tested this.  So, I’d rather choose my library.itl from the backups.

Additional note, you can’t tell which version of iTunes generated the library.itl file. So, you will need to review your backup library.<date>.itl files and locate a dated file that’s before you installed iTunes 11. If you don’t remember the date you installed iTunes, you may be able to find the install date in Control Panel->Programs and Features.

Mac Note: that with the exception of the paths, the basics of these instructions may apply to MacOS X. I’ve just not reverted iTunes on MacOS X as yet. However, you’re in luck, Danny has produced a rollback article for Mac OS X here on Randosity for Mac OS X users.

Apple’s progressive slide

There are some technology changes that Apple makes that work. There are some that don’t. Part of the problem is a quality control issue. Steve Jobs was a stickler for high quality control to the point of perfectionism. This is a good thing in that Apple’s quality was always near perfect when Jobs was on duty. Unfortunately, since Tim Cook has taken over, that quality level has dramatically slid down. The iPad 3 was the first example, then OS X Lion, then iOS 6, Mountain Lion and now iTunes 11.  I won’t even get into that thing they’re calling an iPod nano.  I still shutter to think that someone at Apple thought the new taller iPod nano would actually have a real world use case over the ‘watch’ version? I should just avoid the obvious discussion about the whole taller nano debacle.

I’m not sure what the Apple engineers are thinking at this point, but one thing is crystal clear. There is no one at Apple driving quality control either at a software or hardware level. I doubt that Steve Jobs would have ever let iTunes 11 see the light of day the way it is now. The changes were far too drastic requiring a huge learning curve without any real benefit to the user. I mean seriously, what did Apple hope to accomplish by making this drastic of a software change?

For example, if Apple were planning on introducing a Netflix-like streaming service and iTunes needed the software to support this, I can full well understand implementing a needed software change to support this. If they were planning on allowing some new advanced technological approach to playlists, like Facebook style sharing of them, then maybe a change might be required. But, making a change just to make change isn’t useful or wanted. Complicating the interface and moving things to unnecessary new areas is not wanted. Users don’t want to have to relearn an interface just because someone decides to haphazardly move things around with no rhyme or reason.

Analysts amazingly silent?

I’ve yet to see any analysts making any calls on this or any other Apple quality issues. Yet, it’s crystal clear. Apple is not the Apple it once was. I’m sure the analysts are just biding their time to allow their clients to get their money out of Apple before making word of the problems that are just beginning to face Apple. In fact, it’s the same problem that now faces Sony. Sony used to be a top notch, high quality and innovative technology company who could basically do no wrong. Then, something happened at Sony and they’ve not been able to produce anything innovative in years. Apple is clearly on its way to becoming the next Sony. It’s also inevitable that without hiring someone (or several people) of the caliber of Steve Jobs that has both the technological vision combined with high levels of quality control, Apple doesn’t have a future.

As a software developer, you can’t just throw out any change to the wind and hope it succeeds. No, you have to bring in test groups to review the changes and find out how the average user responds to the changes. Apple shouldn’t have any trouble putting testing groups together. But, it appears that iTunes 11 did not get user tested at all. It’s a shame, too. iTunes 11 has some cool features, but those are just completely eclipsed by the poor quality of the software and the stupid design decisions.

Can Apple recover?

Yes, but it’s going to take someone (or several people) to bring quality control back to Apple and someone who is willing to say, ‘No, that sucks. Try again’.. just someone should have to said about iTunes 11 before it was ever released.

iTunes 10 and Windows 7: We’re Back (stupid fixable problems)

Posted in Apple, ipod, itunes, itunes bugs, windows by commorancy on September 14, 2010

In an earlier randosity article, I discuss permissions issues related to iTunes 8. We’ll, these issues have now returned with a vengeance in iTunes 10. Does Apple not actually test their software on Windows? I mean, seriously, it’s not that hard to fix this issue when installing.

Apple’s weak Windows developers

Clearly, Apple only focuses on Apple. When it comes to Windows, they just vomit out the software without thought to what crap it really is. Come on Apple, fix your crap. I’m tired of dealing with these issues that are so easily resolved.

How can Apple permanently fix this problem? Simple, the iTunes installer needs to uninstall iTunes fully and clean up all iTunes registry entries completely. Then, the installer should reinstall iTunes from a clean setup. Apple should NOT do the install-over-whats-existing-thing and hope it all works. This clearly doesn’t work.

Anyway…

If you are an iTunes 10 user and you continually keep seeing THIS WINDOW when launching iTunes:

Stupid iTunes 10 Startup Window

Stupid iTunes 10 Startup Window

… and that says “Please wait while Windows configures iTunes” …

Then, follow these instructions in my earlier randosity article to fix the registry permissions for iTunes.

Ok, so the earlier fix doesn’t work. But, you can read the article as it has some relevant information about what causes the issue. Anyway, this word doc attached contains the commands necessary to reset the registry permissions on iTunes and QuickTime registry keys.

Note, since WordPress doesn’t allow attaching functioning scripts as part of the media, I have created this Word doc with the commands. You will need to use the following steps to create the script. Note you will need to quit out of iTunes before you run this command.

Steps to create the reset.cmd command from resetit.doc:

  • Save the ResetIt.doc file to your hard drive
  • Open it with MSOffice or OpenOffice
  • Press ctrl-a to select everything in the doc, ctrl-c to copy it
  • Launch Notepad (Start->All Programs->Accessories->Notepad or Windows Button->All Programs->Accessories->Notepad)
  • In the Notepad window, press ctrl-v to paste
  • In Notepad, File->Save As… and save the file as Reset.cmd in a location you can easily find*
  • Launch a command prompt with Start->All Programs->Accessories->Command Prompt using right-click selecting ‘Run As Administrator’
  • In the command prompt, cd to where you saved Reset.cmd
  • Type in ‘reset.cmd’ into the command shell

Note that this script will take a few minutes to run. Once the script completes, try starting iTunes. If you no longer get this panel, it’s fixed. If you do, then you may need to run this reset script 2 or 3 times more to fully repair the permissions. The reason is that subinacl (the command that’s used to reset each key in the registry) doesn’t continue locating more keys and repairing them once an error occurs (even when it’s successful at changing things). Make sure your login account in Windows 7 is an administrator account.

I have found that the permissions were relatively easy to fix, but the difficulty is with Microsoft’s subinacl.exe command. This command doesn’t seem to work properly to drill down to keys below. This is why you will see lots of duplication in the script. The script needs to run the command multiple times to drill down and get all of the keys. This is also why you may need to run the script several times. If you find you don’t have subinacl.exe, you will need to download subinacl.exe from Microsoft.

Second Note, uninstallation of iTunes and reinstallation may not resolve this issue as the registry keys may not be deleted on uninstallation (due to permissions problems). Therefore, uninstalling and reinstalling probably won’t work. Even still, the new keys may install with the crap permissions that the existing ones already have and you’ll be right back in the same boat. The fix is to make the keys readable and writable by the current user and the administrator.

Come on Apple, fix your crap software.

*Make sure that notepad saves the file as reset.cmd and not reset.cmd.txt. To do this, in the Save As requester, make sure to type in only reset.cmd. Double check to make sure it didn’t append the .txt extension. If it does, you will need to rename this file and remove the .txt portion to run the script.

Disclaimer: The script described above modifies registry keys and is used at your own risk. These keys have been checked against what Apple uses, but following the steps above and modifying the registry is not without risk. Therefore, each user who follows these instructions assumes all risk when creating and running the above reset.cmd script.

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.

%d bloggers like this: