47

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?

10 Answers10

52

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.

Gareth
  • 19,080
Joozey
  • 529
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.

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.

Seth
  • 403
Mike Row
  • 151
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.

Zenadix
  • 150
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.

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

Gareth
  • 19,080
0

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

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

Jim Hoyle
  • 199
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!!

PYK
  • 141
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

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"

palehorse
  • 1,362