Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have a very strange shell extension folder which I just can't get rid of.

"X64"-ShellExtension folder

How can I get rid of this? I already downloaded ShellExViewer, but I cannot find any extension called "X64", nor are the other extensions which reside in that folder anywhere in the Viewer. I am also not able to find that folder in the registry, but that's probably because I don't know where to look.

How can I edit this so the contents of the folder are put in the "default" menu and not in a subfolder?

share|improve this question
I would just reinstall windows. – Ramhound Sep 24 '12 at 10:54
Well, if the machine weren't my workplace computer, I'd actually do that, yes... – Florian Peschka Sep 24 '12 at 13:28
Where/when are you seeing the context-menu? That is, what are you right-clicking to get it? Does it happen when you right-click a drive? directory? the desktop? different types of files? – Synetech Oct 1 '12 at 0:02
I was going to suggest that it is from Total Commander, but that may not be the case. What is likely happening is that you have a few programs which provide both 32-bit and 64-bit shell-extensions and both are being installed. You should be able to remove one of them so that only a single copy appears. – Synetech Oct 1 '12 at 0:06
@FlorianPeschka, so what happened? You clicked accept but did not state whether you solved it or not. – Synetech Oct 3 '12 at 18:15
up vote 1 down vote accepted

Does that entry show up for all objects (drives, folders, files of any type) or just for particular file types? If it shows for all objects, check the registry below HKEY_CLASSES_ROOT\*, particularly the shell and shellex subkeys. Try deleting the * subkey:

  • Start regedit (as administrator) and navgate to HKEY_CLASSES_ROOT\*.
  • Click File > Export... and save the key to a file.
  • Delete the key.

Does the X64 entry still appear after that? Re-import the registry file you saved before to undo the change.

You could also try a registry search for X64 (whole string in keys and data):

enter image description here

I don't think it's very likely that you'll find it that way, but it won't hurt to try. You need to look only below HKEY_CLASSES_ROOT. You can stop the search when it hits HKEY_CURRRENT_USER or HKEY_LOCAL_MACHINE.

As for ShellExView: an extension won't necessarily be registered with the same name that is displayed in the context menu. Start the program (as administrator) and order the extensions by company (it's unlikely to be a Microsoft extension, so you probably should focus on the non-Microsoft ones). Which non-MS extensions are listed there? Ignore the ones that you can clearly identify and disable the others.

Does that remove the context menu entry? If so: re-enable half of the disabled extensions. If the entry re-appears it's among that half, so disable half of those extensions again. Otherwise it's among the other half that's still disabled, so enable half of those extensions. Continue until you have narrowed down the problematic extension.

share|improve this answer
> Delete the key [HKCR\*]. Why not just rename it instead? – Synetech Oct 1 '12 at 0:01
Renaming may have some side effects that removing won't (whatever the key is renamed to will be a valid type). In this case it probably won't make a difference, though. – Ansgar Wiechers Oct 1 '12 at 0:10
The only side-effect would be if you don’t have permissions (which should not be a problem unless a virus or poorly behaved program added a subkey with special permissions), then some or all of it wouldn’t get renamed, but then you also wouldn’t be able to delete it anyway. – Synetech Oct 1 '12 at 0:19
That is not a side-effect of renaming (or deleting) the key, and also not what I was talking about. If you rename the key from * to foo it becomes the registration for a type "foo" that something in the system may or may not use. – Ansgar Wiechers Oct 1 '12 at 0:46
Why would you rename it to foo? Whenever I want to perform the test you described (which I have done countless times), I usually just append or prepend a # or something to the name. For example * would become #*, *-, etc. It works just fine and is much simpler than having to export/import. – Synetech Oct 1 '12 at 0:55

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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