I ran into a problem in one of our labs recently regarding our good friend QuickTime. Now, I’m no fan of QuickTime and curse the .mov format under my breath every time I have no alternative formats available. Pressed for time, I tried to solve this problem using QuickTime Alternative but my users specifically wanted to use QTVR, which QuickTime Alternative does not support, at least, as far as I am aware of. The problem was quite unique, so I’m not sure how many people are going to encounter it. For the sake of documentation, I’m writing it down. Also, when I was searching for possible clues when I was dealing with this problem, I found nothing online. I went ahead and listed the whole problem-solving process to try and be an example of troubleshooting.
Basically, this boils down to a permissions issue. But permission to what and why?
Symptoms
If I went to a website with an embedded QuickTime object as a standard user (non-administrator), I would get this weird faded QuickTime logo ‘Q’ with a question mark on top of it. This happened with any browser I tried.
If I go to that same site, without changing anything else, as an administrator or in a browser using Run As with an administrator account, I can load the QuickTime element just fine. I downloaded a .mov file and watched it normally as a non-administrator using the latest QuickTime. Of course, I also tried re-installing QT to no avail.
The weird thing was, as a standard user, if I right-clicked on the QuickTime question mark logo, I’d get the menu like it knew it had QuickTime. It was also listed in the Firefox Plug-ins section and about:plugins. If I right-clicked on it and chose about QuickTime, I’d get the following window to pop-up.
Nothing indicated a problem accessing QuickTime itself. I did a little digging around and checked out the QuickTime element in the Control Panel. Under Browser – MIME Types, I found something suspicious. For an administrator, it would list the different MIME types and tell whether they were associated with QT via a checkbox. For the standard user, it gave this weird message about the MIME Types, File Extensions, and ‘Handled By’ as all being ‘[Programatically Set]’. If I made the standard user an administrator and accessed this window, it would look normal and have the MIME Types shown with checkboxes for associations.
After removing these admin privileges and restarting, the problem would reappear. It bears mentioning that these standard users were using mandatory profiles, so it redownloaded their profile with the restart. This seemed to indicate the problem was in the profile somewhere, but that still left it up to a few places. Apple could have a couple of QuickTime folders in the Application Data folder or the Local Settings folder or pretty much anywhere, and there could be a problem with these accounts accessing it.
Diagnostics
I found a file in the C:Documents and Settings[username]Local SettingsApple Computer, Inc.QuickTime folder. I verified permissions for that user and everything was fine. The copy I had found was 0 KB while the admin copy was 8 KB. I copied the Admin copy over the user’s but it didn’t solve the issue.
If it wasn’t a folder permission but was still in the profile, this meant it could be the registry, particularly the HKEY Current User hive. I reset everything and fired up RegMon from SysInternals while I opened the QuickTime Control Panel. With some carefully crafted filters, I was able to narrow down a few registry keys being accessed. One, under HKey Local MachineClasses, pointed to a number of different file types and the second pointed to a HKey Current User value. I investigated this registry key and drilled all the way down to :
HKCUSoftwareApple Computer, Inc.QuickTimeLocalUserPreferences
The FolderPath value was actually pointing to a location under the lab machine that was originally used to create the mandatory profile. So, none of these standard users would have access to such a folder except that one user. Sure enough, when I tried QuickTime on that machine it worked without changing anything.
The registry value was pointing to the location we investigated earlier but for a different user, C:Documents and Settings[username]Local SettingsApple Computer, Inc.QuickTime. I corrected this for the machine I was sitting on and sure enough QuickTime started working for the standard user. I deleted the HKCUSoftwareApple Computer, Inc. from the mandatory profile and restarted all the machines so they would update their profile to this fix. After they came back up, they were all able to utilize the QuickTime that was installed on them.
Summary
If QuickTime is giving you a message about its MIME Types being “programatically set” check the HKCUSoftwareApple Computer, Inc.QuickTimeLocalUserPreferences registry key and check where it’s pointing to. If the account doesn’t have permission to that directory change that or change where this registry key points to. You can delete the key and it will be re-created on first use, but if it already exists it will keep the setting it has, even if it doesn’t have access to that location.