简体   繁体   中英

Unable to read registry during installation of winform app on win server 2003

I am working on a win form based application in c#. When being deployed it writes its install location in registry. Now there is a separate plugin which during deployment looks for this value in registry.

Now the problem I am having is that it is working perfectly on my 32-bit win 7 dev box. But on client's 64-bit win 2003 server, the host application is able to write registry value but the plugin is getting empty string from registry. One problem could be that it is unable to find the registry on a server box.

Any ideas what could be the issue and how can I resolve it?

On 32 Bit the registry key will be something like:

HKEY_LOCAL_MACHINE\SOFTWARE\MyCompany

On 64 Bit the registry key will be something like:

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\MyCompany

I'm guessing the plugin may need updating / configuring (depending on how you use it) to support 64 Bit .

64-bit versions of Windows emulate 32-bit functionality through the "Windows on Windows" (WoW) subsystem. In the case of the registry, they move the 32-bit keys over to a special subkey for compatibility reasons.

The keys for 32-bit software on a 64-bit OS will be in: HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node .

This is the registry analogue of the file system redirector that maps system32 to SysWOW64 .

More details can be found on the MSDN topic about the Registry Redirector .

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM