HKEY_CURRENT_USER\Software\Wow6432Node\Classes vs HKEY_CURRENT_USER\Software\Classes\Wow6432Node

StackOverflow https://stackoverflow.com/questions/3936146

  •  30-09-2019
  •  | 
  •  

Question

The question is very simple, what's the difference between HKEY_CURRENT_USER\Software\Wow6432Node\Classes and HKEY_CURRENT_USER\Software\Classes\Wow6432Node?

Was it helpful?

Solution

I'm not sure, but I can tell you that my Windows 7 x64 machine only has the latter one. I do have HKEY_CURRENT_USER\Software\Wow6432Node\, but Classes doesn't exist inside that for me.

OTHER TIPS

rather late, but here I go

Colin O'Dell writes:

I'm not sure, but I can tell you that my Windows 7 x64 machine only has the latter one. I do have HKEY_CURRENT_USER\Software\Wow6432Node\, but Classes doesn't exist inside that for me.

And you shouldn't have, HKCU is actually pointer to -> HKUS\UserSid

Now HKCU\Software\Classes is actually pointer to -> HKUS\UserSid\Software\Classes, and this one is actually pointer to HKUS\UserSid_Classes

Now here comes WOW redirection, and for example HKCU\Software\Classes\CLSID becomes: HKUS\UserSid_Classes\Wow6432Node\CLSID

ain't that fun?

So in short, HKEY_CURRENT_USER\Software\Wow6432Node\Classes is most-likely a leftover after some misbehaving application (that was probably trying to figure out redirection by itself...)

jp2code writes:

We have hundreds of WinXP machines at our workplace still. Classes is installed on all of them, but not Wow6432Node

Weren't you perhaps speaking about 32-bit Win XP? if so, it's quite obvious, there's no Wow node...

See this article: Registry Keys Affected by WOW64

HKCU\Software\Classes\Wow6432Node is correct: it's the redirected location that's accessed by 32-bit apps when they ask for HKCU\Software\Classes on a 64-bit machine.

HKCU\Software\Wow6432Node\Classes should not exist. If it does, whatever wrote that key and its subkeys is buggy.

In fact, I think that HKCU\Software\Wow6432Node should not exist - it's not listed on that article I linked above and on my system I have only HKCU\Software\Wow6432Node\Microsoft\Active Setup\Installed Components with a few subkeys, which suggests to me they're in the wrong place.

The reason for the "Wow6432Node" reg key and the other key, is that on modern 64 bit machines we still run alot of 32-bit apps. Microsoft knowing this, has allsorts of mirroing, and spoofing schemes within the registry to sort it all out. Usually this works to your advantage.

Say you are trying to register som component to the registry in code. All you need to do is try to put your entries into the key(reg path) you think you want. The registry will take that request and deal with it (propably putting it into the Wow6432Node sub-directory).

In other words, 99% of the time ignor 'Wow6432Node'. Especially if you are registering things to the registry from code. If you manually include 'Wow6432Node' in your path, then your app will only work right on 64-bit machines - which are the only ones who use that reg path.)

SUMMARY: Its where windows puts your 32-bit stuff on a 64-bit machine!!!!!

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Classes is linked to HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Wow6432Node

You can read this at the bottom of this article.

I have no explanation for the "Classes" subkey and I don't see it on my own machines but the HKCU...Wow6432Node subkey is confusing itself since it is not associated with registry redirection and is not listed in the "Registry Keys Affected by WOW64" MSDN doc. I'm wondering if the OP was referring to a theoretical "Classes" child subkey of "Wow6432Node".

"Active Setup" is a reason that HKEY_CURRENT_USER\Software\Wow6432Node may exist. Application installers sometimes require per-user modifications to run when the user next logs in.

At login, to detect such modifications needed for 32-bit applications on 64-bit Windows, Windows compares [HKLM\SOFTWARE\Wow6432Node\Microsoft\Active Setup\Installed Components{GUID}] to [HKCU\Software\Wow6432Node\Microsoft\Active Setup\Installed Components{GUID}].

If the HKLM GUID subkey is not also found in the HKCU analogous location, Windows performs the installation operations and copies the information to [HKCU\Software\Wow6432Node\Microsoft\Active Setup\Installed Components] (so that the installation operations are not repeated).

So, if [HKCU\Software\Wow6432Node\Microsoft\Active Setup\Installed Components] is present, then the "Wow6432Node" portion of the HKCU... subkey ID is likely just text that matches a portion of the HKLM... subkey.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top