68

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?

3
  • 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. Jun 26, 2015 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, 2015 at 16:04
  • 4
    Possible duplicate of "Open With" dialog ignores my selection
    – user114447
    Mar 9, 2016 at 23:53

16 Answers 16

86

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
6
  • 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, 2015 at 4:55
  • 2
    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.
    – abhijit
    Aug 17, 2015 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, 2015 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. Jul 24, 2017 at 11:45
  • 1
    If changing the path doesn't work, you can also try deleting the registry entry to fix the issue.
    – Stevoisiak
    Aug 17, 2017 at 16:27
13

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.

2
  • 4
    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, 2014 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, 2016 at 23:08
4

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

3

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.

8
  • 3
    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, 2013 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, 2013 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, 2013 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, 2013 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, 2013 at 21:41
3

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.

2

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

1
  • 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, 2014 at 19:36
2

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
1

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.

1
  • Your trick worked for me. I had Office 2010 and Office 365, double-clicking a Docx file used to start 2010 but I wanted 365, I couldn't find Word 365 in list of applications to assign to Docx extension. NB: in case people don't find "Programs and features" (for instance in some non-English versions of Windows), you may run it directly by pressing the Windows key then typing appwiz.cpl. Jun 25, 2020 at 10:00
1

On my Windows 10, everything else failed, except for Nifsoft' FileTypesManager

1
  • Windows 10 - yes this solves
    – grunt
    Jan 7, 2019 at 16:13
0

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...

0

You can use this command for ".txt" files. but you must open command prompt with admin roles. ftype txtfile="C:\Program Files (x86)\Notepad++\notepad++.exe""%1"

if you don't know file type of your file you can use "assoc .txt" command on command prompt.

For more details you can check this link: Windows “Open With” application not appearing as an option

It works for me.

0

I had AutoCAD 2007 installed on my computer then I installed AutoCAD 2010. But I couldn't reassociate the file extensions so they would open up using AutoCAD 2010.

My solution was to rename the 2007 version acad.exe. Immediately afterward, the 2010 version showed up on the list of available programs to associate with that file type.

0

You need to delete the UserChoice key from

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

Find your extension, then find the key called “UserChoice” under that extension.

-1

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.

-1

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.

-1

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.

You must log in to answer this question.

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