Write the registry value without redirect in Wow6432Node

北城余情 提交于 2020-01-11 09:36:09

问题


this code insert the registry value

Microsoft.Win32.RegistryKey key;
            key = Microsoft.Win32.Registry.LocalMachine.CreateSubKey("SOFTWARE\\Microsoft\\Internet Explorer\\MAIN\\FeatureControl\\FEATURE_BROWSER_EMULATION"); 
            key.SetValue("MyBrowser.exe", 8000);
            textBox1.Text = key.GetValue("MyBrowser.exe").ToString(); 
            key.Close();

in windows 32 bit work, but in 64 bit is inserted to wow6432node how to disable the redirect?


回答1:


You need to open the key using RegistryView.Registry64. You specify this in the OpenBaseKey method so you'll need to rejig your code a little.




回答2:


RegistryView is available only on .NET 4. You might want to consider allowing your program to run as a 64-bit process so no redirection takes place. VS2010 has new behavior, it forces apps to run in 32-bit mode on new projects. Project + Properties, Build tab, change Platform target to AnyCPU.



来源:https://stackoverflow.com/questions/7311146/write-the-registry-value-without-redirect-in-wow6432node

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!