I am attempting to set the default program to open a file with and I am unable to do so. I am using Windows 7 and the file extension I am attempting to set a default program to is bfa (*.bfa); the program that not only generates this file type but also the program which I am attempting to set as the default to open it is Blowfish Advanced CS (http://bfacs.sourceforge.net/).

When I right click a file and select "Open With", I go through the motions of trying to select the program: clicking "Browse" with "Always use the selected program..." checked and then I browse to the program. Once I select the program it fails to pop up as an option in the "Open With" dialog. I suspect the problem relates to the fact that the OS is 64-bit and application is 32-bit. Any suggestions on how to proceed?

  • 2
    I had this happen when upgrading from a 32-bit to a 64-bit version of an app. Because 64-bit apps are stored in a different Program Files folder, Windows couldn't find it and so wouldn't let me select it. I fixed the problem by going through the registry and deleting all references to the 32-bit version. – Adam Pierce Jun 26 '15 at 3:44
  • I recently had a similar problem with the program Geogebra and in my case I solved it by renaming the executable. But I am not sure what is causing this issue, maybe windows has some kind of duplicate name of an executable of a previous version of that program, even though the path name is different. – fibonatic Jul 22 '15 at 16:04
  • 3
    Possible duplicate of "Open With" dialog ignores my selection – kristianp Mar 9 '16 at 23:53

12 Answers 12

Find the registry key for the application you wish to associate, lets say for Notepad++.exe in \HKEY_CLASSES_ROOT\Applications\notepad++.exe \shell\open\command\

Check if the .exe path is right. If not, then change the path to the correct one.

After doing this, you can now go to the file you wish to associate and use the standard way Open With and choose the program you wish to open.

Explanation:

This issue happens when Windows gets confused about the filepath for a program, as file associations are handled using only the base executable name of a program (source).

This bug can be caused by:

  • Running multiple versions of a program (i.e. Notepad++ and Notepad++ Portable)
  • Moving programs to different folders.
  • Changing drive letters
  • If some of your drive letters have changed - when you remove/add a permanent disk or changed around drive letters, like sometimes happens when repartitioning drives - This is the most accurate and safest solution (among registry-based solutions). – Neowizard Mar 6 '15 at 4:55
  • 1
    As @scunliffe mentioned, this was the solution that worked for me. The reason I was having this problem was that I had repartitioned my disks and the default software was on a different partition with a different drive name. However, after the drive name change, the registry was still having the old path listed under the software. Changing the path to the current software path solved everything. – globetrotter Aug 17 '15 at 10:42
  • 1
    one of my students had a similar problem, he opened a portable version of sublime once from our shared Network Drive, so \shell\open\command\ was set to "\\servername\studentSoftware\sublime\sublime_text.exe" even after he installed sublime locally on his laptop. so when he was not at school he chouldn't assign sublime as default program. for me this is the correct answer. – philx_x Oct 21 '15 at 7:14
  • I removed all the references I could from the registry (two were protected) to both the 32 and 64 bit of UltraEdit (uedit32.exe and uedit64.exe) but even after a clean reinstall, it did not work. Finally I created the following keys manually and added the name=default, type=REG_SZ and value="c:\Program Files\UltraEdit\uedit64.exe" (including the " symbols) values under both of the keys: HKEY_CLASSES_ROOT\Applications\uedit.exe\shell\edit\command HKEY_CLASSES_ROOT\Applications\uedit.exe\shell\open\command After this I was able to define UltraEdit as the default opener for *.txt files. – Csongor Halmai Jul 24 '17 at 11:45
  • 1
    If changing the path doesn't work, you can also try deleting the registry entry to fix the issue. – Steven Vascellaro Aug 17 '17 at 16:27

I had the same problem, and none of the solutions worked (like the method below of going to the Control Panel - which does the same thing if you right click the file->Open With->Choose Default). Even after selecting the new program many times, it was stuck with the old one.

I fixed it by editing the registry. Go to the concerned extension like this (I had problem with .cpp):

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.cpp

Besides these two keys: OpenWithList and OpenWithProgids, it might have a third one called 'UserChoice'. Just delete that third key. After that, it will allow you to change the default program for that file extension.

  • 3
    I had similiar problem, when I upgraded from Sublime Text 2 to Sublime Text 3. Navigate to Computer\HKEY_CLASSES_ROOT\Applications\ find the key for (application name) and just delete it. Then do the Open With (default=) trick again, and it all works. – zipzit Nov 14 '14 at 23:40
  • I tried deleting the key but after changing the association and opening the file again it opened in the wrong program still. – intcreator Jan 26 '16 at 23:08

example : file type .css

find and delete key

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.css

HKEY_CURRENT_USER\Software\Microsoft\Windows\Roaming\OpenWith\FileExts\.css

HKEY_CLASSES_ROOT\.css

open task Manager and Restart Windows Explorer Or reboot computer

Try

Control Panel\All Control Panel Items\Default Programs\Set Associations

enter image description here

ADDED

Also see the question here ftype changes are ignored. Where does Windows retrieve the "incorrect" value from? How can I enforce my changes? for an example of the assoc and ftype commands. Starting an administrative cmd prompt and running the assoc command for the extension, then the ftype command for it, should associate the extension with the program you specify.

  • 2
    Thanks, I did try this; it ultimately will end up bringing up the same "Open With" dialog. When I tried it this way it failed as well. – Gedalya Oct 7 '13 at 17:50
  • @Gedalya can you open the program directly and then the file within the program? and when you choose to open it with your program, what program if any does it try to open the file in? – barlop Oct 7 '13 at 18:37
  • I can open it directly with my program. Currently the file is associated with Adobe Acrobat; this is by accident though. When I first installed the program the file type was unassociated; when I tried to associate it it was accidentally associated with Acrobat. – Gedalya Oct 7 '13 at 18:58
  • so was acrobat always opening it? and you couldn't stop acrobat from opening it until you change the file association within blowfish itself? – barlop Oct 7 '13 at 20:35
  • No, Acrobat wasn't always opening it. I associated the file with Acrobat on accident; I went through the motions of trying to associate Blowfish and didn't pay attention to the fact that it wouldn't let me and Acrobat was selected so it ended up being associated. Acrobat doesn't really have anything to do with the problem. – Gedalya Oct 7 '13 at 21:41

I wanted to share my solution. I wanted to open .spq with SpeQ Mathematics.exe, which is a standalone program (it does not require installation). The program did not appear in the list even after I found it via browsing and selected it.

I went to

HKEY_CLASSES_ROOT\.spq

and found listed Data: spq_auto_file

I then went to

HKEY_CURRENT_USER\Software\Classes\spq_auto_file\shell\open\command

and saw the wrong folder listed under Data. I changed the folder to the actual one and the program appeared in the context menu list. I suppose the moving around that can be done with standalone programs was the reason for my problem.

I was able to fix my problem with the program itself. See the picture below for reference; under 'Tools' > 'Options'

The 'Miscellaneous' tab; under 'Registry Setup' there are two options that alter the registry. I applied both and it works now. What isn't clear is how I could have done this without the program doing this.

enter image description here

  • The program was probably actively working against you. Every time it loaded and the 'Associate File Types' box was unchecked, it probably scrubbed the filetype association out of the registry. – hBy2Py Dec 31 '14 at 19:36

Just for you guys to know...

I had the same problem on win8.1.

That default file dialog seems to hang explorer, it happens both from the folder´s right click option and from set association screen, I think there is some problem with that functionality...

For me, killing explorer process via Task Manager and reopening explorer, (from task manager) via File -> new Task -> explorer.exe, completed the process of setting the default program normally and everything works fine now.

I don´t know if was just luck, but it is worth trying...

I've had the same/similar problem.

Here is what caused it. I use keepass.exe to open .kbd files both of which I synch over cloud. When I moved the folder it stopped working. The OS knows that that's my program, but I'm unable to update the location of the executable through the Open-with dialog.

The solution...

  • Open regedit
  • find the application you are looking for in HKEY_CLASSES_ROOT\Applications\.
    • Example: atom.exe is located at HKEY_CLASSES_ROOT\Applications\atom.exe
  • delete that entry
  • right-click the file type and try selecting the program again. It should now appear

i fixed this issue by right-clicking the file i wanted to open and choosing "properties". on the "general" tab it said "opens with: unknown program" or something like that. i just clicked the "change..." button next to that message and picked the app i origionally wanted. i think maybe this happens when the associated application gets deleted.

The best solution is to remove the user account that cannot set a default program to open a file and re-create a new user. At some point when installing/updating an application, Windows corrupted the policy for that user account. Be sure to copy all the user's data (c:/users/userid/) before removing that user account and log in with a different user with Sysadmin account.

To Remove the user account: Control Panel >> System >> Advanced system settings >> Advanced (tab) >> Setting (under User Profile) >> delete the corrupt user account.

Then reboot, log in and create a new user. You can use the same account name.

Try setting the default from within the program you want to use as opener.

I had similar problem when php files all of a sudden started opening with Acrobat which caused an error as Acrobat can't handle php. I tried to change the association, but all failed. Finally went to Dreamweaver's preferences and set it as opener for php.

For anyone having the same issue but with Office 365 / Excel 2016:

Going to "Programs and Features" -> right click "Office 365" -> change -> Quick Repair fixed the issue for me.

Your Answer

 

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.