Search code examples
windowswinapi64-bitregistry32-bit

Does KEY_WOW64_64KEY have any effect on 32 bit Windows?


It appears that specifying the KEY_WOW64_64KEY flag (reference) when accessing a registry key under 32-bit Windows XP has no effect - that is, no error is thrown, and the key is opened as if you hadn't had the flag set.

I know Windows 2000 throws an error when it encounters this flag.

I want to make sure my app is compatible with as many versions of windows (2k and later) as possible.

Is there a Microsoft reference that specifies each version of Windows' behaviour for this flag? In particular, I'd like something that validates my assumption that it has no effect at all on post-2k 32-bit Windows.


Solution

  • According to this Windows page:

    https://learn.microsoft.com/en-us/windows/win32/sysinfo/registry-key-security-and-access-rights?redirectedfrom=MSDN

    Both

    KEY_WOW64_32KEY (0x0200)
    
    KEY_WOW64_64KEY (0x0100)
    

    will be ignored on 32-bit Windows.

    And those flags are not supported on Windows 2000.