45

I am running Windows 7 x64. I have a file type that I want to associate with Microsoft Access 2003.

I right-click on the file and select Open With->Choose Default program. In the "Open With" dialog, I select the browse button. I choose Program Files (x86)\Microsoft Office\Office11\msaccess.exe and press "Open".

I end up back at the "Open With" dialog, but nothing has changed. Access is not listed as a program to use to open the file with. The original program (Adobe Acrobat) that is associated with this program is still selected.

Any tips on getting this association to work?

3
  • 4
    Yes, this is a bizarre bug that has annoyed me for a long time and several versions of Windows. It only happens intermittently so I have not kept track of which executables exhibit/trigger this behavior, thus I have been unable to find any sort of unique commonality between them.
    – Synetech
    Commented Jul 16, 2012 at 20:20
  • 3
    Possible duplicate of I can't set a program as the default to open a filetype with in Windows 7
    – Stevoisiak
    Commented Aug 17, 2017 at 16:30
  • it happens because windows uses only the executable name, not the full path, when storing associations. A full explanation and solution: superuser.com/a/886139/425338 Commented Sep 13, 2017 at 21:00

10 Answers 10

51

The cause is most likely a quirk in the registry that slipped in for some unknown reason.

Make sure the key value in the following location contains the correct path:

HKEY_CLASSES_ROOT\Applications\YOURFILE.EXE\shell\open\command

Search for the application name and the file extension in the registry to see if other entries are possibly corrupted as well.

11
  • 4
    This was exactly the issue for me.. once I changed the value at that exact location, it worked fine as soon as I tried to browse -> open again
    – abelito
    Commented Nov 19, 2012 at 15:03
  • When the key value does not point to the right location of the application, change it as indicated in another answer here Commented Nov 29, 2013 at 18:11
  • 2
    This fixed it for me. Problem was I upgraded it from 32-bit to 64-bit, so it was looking in Program Files (x86) instead of Program Files
    – endolith
    Commented Mar 26, 2015 at 18:40
  • 2
    Fixing the path to the app in this registry key fixed it. It appears when I uninstalled the app, and then reinstalled with a different path, this registry key wasn't updated. It appears to be a Win7 bug that if the entry for the app exists, windows exits the app selection process without modifying the registry entry; even if the path you select does not match the existing value of the registry entry. The prevents users from changing the path to an existing app using the "Open with" GUI.
    – chetto
    Commented Jul 10, 2015 at 19:27
  • 3
    Congrats MS.... 6 and half years down the line and we're still doing this.
    – user293915
    Commented Oct 31, 2017 at 5:42
16

It is a very simple problem, actually. It happens because Windows uses associations based solely on the base executable name of the program.

Whenever you associate a program with an extension, the program will be present on the HKEY_CLASSES_ROOT\Applications list, where the key names are the base names of the executables (e.g., MSACCESS.EXE and AcroRD32.exe). You can’t associate another program with a file extension if it has the same executable name. What happened is that you probably moved the software to another location (you can see it happens mostly with portable software versions) and when you try to point to it, Windows will see that the name is already registered and instead will try to use the registered path. When it can’t find that, it silently ignores the error and presents the dialog back with no changes whatsoever.

The solution is equally simple: just correct or delete the HKCR\Applications\YourAppName.exe key and try again.  It will work.

3
  • It also happens when you have multiple versions of Adobe Photoshop installed (via Creative Cloud) all of which use the same executable name.
    – Phrogz
    Commented Feb 15, 2017 at 17:14
  • That's it! Very stupid, they should store the path or a hash as well.
    – Philipp F
    Commented Sep 13, 2017 at 6:52
  • Thank you very much for really explaining what happens! This helped me solve the problem my way. In my case the software was not really moved. The software was just at another path on the local disk because it was another PC in the same company with the same roaming Windows profile ;-)
    – Robert
    Commented Jan 10, 2020 at 8:29
11

The registry key shown above was my problem.

HKEY_CLASSES_ROOT\Applications\MSACCESS.EXE\shell\open\command

Should read:

"C:\Program Files\Microsoft Office\Office14\MSACCESS.EXE" "%1"

for access 2010.

It still had the entry:

"C:\Program Files\Microsoft Office\Office12\MSACCESS.EXE" "%1"  

for office 2007.

The file does not exist in that location so it did not appear in the application selector until I changed the entry.

Once I updated the registry I was ableto select Microsoft Access directly from the list of available applications.

5

I had a similar problem with Sublime Text. It wouldn't show up in the Open With dialog no matter what I did. This is how I solved it.

  1. Open regedit or any registry editor.
  2. Navigate to: \HKEY_CURRENT_USER\Software\Classes\Applications\sublime_text.exe\shell\open.
  3. Remove all the subkeys.
  4. Create the subkey command with value "C:\path\to\sublime_text.exe" "%1" (double quotes included!).

Of course, this will work with any program, not only Sublime Text. Just replace sublime_text.exe with your program's executable.

2

If all fails, you can edit the registry manually (backup the the hive/key first):

Each file type (extension) which has an associated application has a Registry key under HKEY_CLASSES_ROOT.

Or use FileAsoc, a Windows File Association Editor

FileAsoc is open source freeware.

Or File Type Doctor, which is part of the Creative Element Power Tools (shareware)

alt text

3
  • They way to change this via registry is indicated in another answer here Commented Nov 29, 2013 at 18:13
  • 1
    FileAsoc to me doesn't seem a good recommendation, it requires a rather peculiar VB runtime environment (which is not installed by default, and seems hard to come by, the links from FileAsoc's page to these are dead. And the recommended "Creative Element Power Tools" also aren't available anymore!
    – codeling
    Commented Sep 1, 2016 at 11:06
  • 1
    Seems this program has fallen off the web. Instead, try FileTypesMan (worked for me): nirsoft.net/utils/file_types_manager.html
    – roblogic
    Commented Nov 10, 2016 at 2:27
2

I fixed the problem for my wmplayer.exe (that was missing and un-addable in the open with dialogue) by changing the

HKEY_CURRENT_USER\Software\Classes\Applications/wmplayer.exe\shell\open\command

from

"C:\Program Files\Windows Media Player\wmplayer.exe" "%1"

to

"C:\Programme\Windows Media Player\wmplayer.exe" "%1"

Where Programme is the localized (german) version of 'Program Files'. This does not make any sense to me (as when i hit "copy path" in the shell menu of windows explorer, the path contains Program Files. And when I add the Media Player by browsing in the "open with" dialogue, its also added with Program Files), but it worked as a solution, where simply deleting the reg key did not.

0

I have seen cases where some dialogs don't prompt you for security elevation and do not give you a message that the change could not be made. Try doing it through control panel

Control Panel -> Programs -> Default Programs -> Set Associations

Or just type "file open" into the start menu search and choose "Make a file type always open with a certain program"

0

I recently had a similar problem with all of my media file associations, and it seemed due to an obnoxious media player called DAPlayer. Even under Control Panel/Programs/Default Programs/Set Default Programs, I was unable to change the default program. Apparently, it set the UserChoice keys under HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts for all of its file associations to read-only access, even for administrators. Even after uninstalling the program, all of my associations remained stuck on "Unknown Application".

The simplest way to fix this is to browse to that key in Regedit, right-click it and select Permissions, click the Advanced button, check "Replace all child object permissions", and click OK.

Or if you prefer the command line, you can use a Windows Resource Kit tool called SubInACL:

subinacl /subkeyreg HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts /grant=administrators=f /grant=system=f /grant="%USERNAME%"=f

But be careful with bulk registry operations like this: improper use could render your system inoperable! I take no responsibility for your actions.

0

NirSoft often rescues: http://www.nirsoft.net/utils/file_types_manager.html

That is FileTypesMan (File Types Manager for Windows) by NirSoft.

1
0

A good way to fix this is deleting all records associated with your desired application

For example:

If the .exe file to be placed at Open With list is NOTEPAD++.EXE

1 - Open the regedit and find for notepad++.exe

2 - Delete all the records found

3 - Now try Open with dialog again

... Bleem!!

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .