Why can't change the default program to open an extension in Windows 7?

I mistakenly assign Office Outlook to open my .eml files in Windows 7. But, as Outlook do not open such files, I downloaded Live Mail, but now I can not assign it to open this kind of file by default.

I've tried running Explorer as Administrator, not to avail.

enter image description here


Windows Vista and Windows 7's file type management facilities are half-baked at best. I never understood why Microsoft crippled that part of the OS when they released Vista. They added limitations that make absolutely no sense.

You might want to try to use alternatives listed in my previous question on the matter:

What program do you use to edit file associations in Vista and Windows 7?

The program that stood out was Default Programs Editor which is free and will allow you do pretty much whatever you wish to do.

Screenshot


My answer relates to a similar, but not the same, problem, where I can't associate a file extension with a program with the same name of a deleted program previously used for this extension, when the new program is located in a different path. Nonetheless, this should be relevant to your case.

As others have noted, broken registry entries explain this behavior. I used CCleaner to get rid of the erroneous entry after I tried and failed to get rid of it by myself. This seems to happen when a program used to open a specific file type is deleted and you try to associate this file type with another program with the same name installed elsewhere. When this happens, Windows gets confused about the program used to open it, and the system can't associate the file extension with the new program.

You may want to look at this answer for more information and some cautions on registry cleaners including CCleaner.


To change an extension to not be opened by any program:

  1. Create a text file with a line of gibberish in it.
  2. Save to your desktop with the .txt extension.
  3. In Control Panel, go to the extension for which you want to remove the default association.
  4. Assign the above text file to be the default program for that extension.
  5. Close Control Panel.
  6. Go back to the text file and delete it.

The extension that was associated with this text file in step 4 will now show it is associated with an "unknown" program.