I have a program that integrates with explorer context menu. It works properly in Win32 but not in Win64. I've compiled the shell extension to Win64 but now I want to register that
The DLL file from the main program is 32 bit and I also want to keep the main program as 32 bit.
I want to access the CLSID key under in Wow6432Node
under HKEY_CLASS_ROOT
. I used RegDisableRef
but it doesn't work
Just like how files are redirected by WoW64, registry accesses are also redirected
You need to specify
KEY_WOW64_64KEY
on thesamDesired
parameter when accessing 64-bit registry keys withRegCreateKeyEx
,RegDeleteKeyEx
orRegOpenKeyEx
However I think compiling the program in separate 32 and 64-bit versions will be easier. Most programs don't need to change when recompile. Moreover you'll still have to recompile the shell extension because 64-bit processes can't load 32-bit DLLs