1

//As a comment, I want to say that I can actually open the context, but it does not work .

I right click on a file and hover the mouse on Open With option, then in the Open With context Menu, I want to choose default program for that file, it shows me an error saying:

This file does not have a program associated with it for performing this action, please install a program or if, one is already installed create an association in the Default programs control panel.

But I don't want to create an association in control panel every time i want to change the default program, I just want to do it by right-clicking on a file and fr

AKA
  • 121
  • 1
  • 7

2 Answers2

0

The problem occurs due to missing registry keys. To fix it it's easiest to download specific registry fix for this issue:

After you download one of those, unzip it if needed and then run the registry file. After that is done, try Change default program again.

Source: http://www.eightforums.com/tutorials/34736-open-choose-default-program-error-fix.html http://www.winhelponline.com/blog/fix-file-association-error-explorer-in-windows-7/

ek9
  • 3,455
0

Fixes by @edvinas.me didn't help in my case. I am running w7hprem SP1 on this machine.

Later I found that CCleaner has removed default value from the key during first run:

HKEY_CLASSES_ROOT\Unknown\shell\opendlg\command

Which differs (in few symbols) from what many net-posts tell about:

HKEY_CLASSES_ROOT\Unknown\shell\openas\command

I found this by doing regression testing (by hand) using the reg-backup file provided by my CCleaner. Later it turned out (after testing various values), it was sufficient to add any Default value here, eg.:

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\Unknown\shell\opendlg\command]
@="nothing"

... and the Open With dialog appeared back.

But in general you should probably import openas_win7.reg file. It seems to be missing from most of mirrors, so here it goes:

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\Unknown]
"AlwaysShowExt"=""
"QueryClassStore"=""
"TypeOverlay"=""

[HKEY_CLASSES_ROOT\Unknown\DefaultIcon]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
  00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,73,00,68,00,\
  65,00,6c,00,6c,00,33,00,32,00,2e,00,64,00,6c,00,6c,00,2c,00,30,00,00,00

[HKEY_CLASSES_ROOT\Unknown\shell]
@="openas"

[HKEY_CLASSES_ROOT\Unknown\shell\openas]
"MultiSelectModel"="Single"

[HKEY_CLASSES_ROOT\Unknown\shell\openas\command]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
  00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,72,00,75,00,\
  6e,00,64,00,6c,00,6c,00,33,00,32,00,2e,00,65,00,78,00,65,00,20,00,25,00,53,\
  00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,00,5c,00,73,00,\
  79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,73,00,68,00,65,00,6c,00,6c,\
  00,33,00,32,00,2e,00,64,00,6c,00,6c,00,2c,00,4f,00,70,00,65,00,6e,00,41,00,\
  73,00,5f,00,52,00,75,00,6e,00,44,00,4c,00,4c,00,20,00,25,00,31,00,00,00
"DelegateExecute"="{e44e9428-bdbc-4987-a099-40dc8fd255e7}"

[HKEY_CLASSES_ROOT\Unknown\shell\opendlg]
"LegacyDisable"=""
"MultiSelectModel"="Single"

[HKEY_CLASSES_ROOT\Unknown\shell\opendlg\command]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
  00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,72,00,75,00,\
  6e,00,64,00,6c,00,6c,00,33,00,32,00,2e,00,65,00,78,00,65,00,20,00,25,00,53,\
  00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,00,5c,00,73,00,\
  79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,73,00,68,00,65,00,6c,00,6c,\
  00,33,00,32,00,2e,00,64,00,6c,00,6c,00,2c,00,4f,00,70,00,65,00,6e,00,41,00,\
  73,00,5f,00,52,00,75,00,6e,00,44,00,4c,00,4c,00,20,00,25,00,31,00,00,00

... from which the Default value of HKEY_CLASSES_ROOT\Unknown\shell\opendlg\command translates into this:

%SystemRoot%\system32\rundll32.exe %SystemRoot%\system32\shell32.dll,OpenAs_RunDLL %1

Which is the same as Default value of HKEY_CLASSES_ROOT\Unknown\shell\openas\command key.


Cheers to user Boothy99 from w7forums.com and to author of original post Ramesh Srinivasan.


PS: for all those interested in the stuff my CCleaner has removed, here it goes:

  [HKEY_CLASSES_ROOT\Unknown\shell\opendlg\command]

  @="C:\\Program Files\\ParetoLogic\\FileCure\\FileCure_noapp.exe %1"

It was leftover from some cleaning tool itself.

saulius2
  • 611