This website uses cookies. By clicking Accept, you consent to the use of cookies. Click Here to learn more about how we use cookies.
Turn on suggestions
Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.
- Revenera Community
- :
- InstallShield
- :
- InstallShield Forum
- :
- Re: 64 bit OS
Subscribe
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Subscribe
- Mute
- Printer Friendly Page
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Oct 14, 2008
05:25 AM
64 bit OS
pROBLEM:
My APPLICATION IS 32 BIT.
I tend to install it on 64 bit OS.
I want to read the 64 bit registry and not 32 bit equivalent of 64 bit on 64 bit OS.
i.e;
can I read the key under "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft"
and not under
"HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft".
If I give the function "RegDBGetKeyValueEx" with path as "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft" it still automatically tends to search inside "HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft".
I want to read the key under "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft" how can I do that.
My APPLICATION IS 32 BIT.
I tend to install it on 64 bit OS.
I want to read the 64 bit registry and not 32 bit equivalent of 64 bit on 64 bit OS.
i.e;
can I read the key under "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft"
and not under
"HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft".
If I give the function "RegDBGetKeyValueEx" with path as "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft" it still automatically tends to search inside "HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft".
I want to read the key under "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft" how can I do that.
(3) Replies
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Oct 14, 2008
06:41 AM
Before you call RegDBGetKeyValueEx, include the line:
REGDB_OPTIONS = REGDB_OPTIONS | REGDB_OPTION_WOW64_64KEY;
This will cause all subsequent registry operations to access the 64-bit section. When you're finished, use:
REGDB_OPTIONS = REGDB_OPTIONS & ~REGDB_OPTION_WOW64_64KEY;
to revert to 32-bit.
HTH
REGDB_OPTIONS = REGDB_OPTIONS | REGDB_OPTION_WOW64_64KEY;
This will cause all subsequent registry operations to access the 64-bit section. When you're finished, use:
REGDB_OPTIONS = REGDB_OPTIONS & ~REGDB_OPTION_WOW64_64KEY;
to revert to 32-bit.
HTH
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Oct 14, 2008
08:12 AM
Thanks for the reply.
But this gives me a compile error I am using IS9 which is quite old. I guess I need to upgrade to new version.
Thanks a ton for the reply.
I also found another method:
// start
Disable (WOW64FSREDIRECTION);
my code
Enable (WOW64FSREDIRECTION);
// end
but for this too I need to have IS 11 and above.
thanks
But this gives me a compile error I am using IS9 which is quite old. I guess I need to upgrade to new version.
Thanks a ton for the reply.
I also found another method:
// start
Disable (WOW64FSREDIRECTION);
my code
Enable (WOW64FSREDIRECTION);
// end
but for this too I need to have IS 11 and above.
thanks
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Oct 16, 2008
02:54 AM
datamine the solution u provided works perfectly fine in IS2009 thanks