您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

OpenSubKey()对于regedit.exe中可以看到的注册表项返回null

OpenSubKey()对于regedit.exe中可以看到的注册表项返回null

HKLM\Software\Wow6432Node认情况下,在64位OS上的32位应用程序将查看该节点。要读取密钥的64位版本,您需要指定RegistryView

using (var hklm = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry64))
using (var key = hklm.OpenSubKey(@"SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall"))
{
   // key Now points to the 64-bit key
}

.NET 4.0中已添加了用于执行此操作的API。如果您仍在使用3.5,则需要使用P / Invoke来访问64位密钥:http ://www.rhyous.com/2011/01/24/how-read- the-64-bit从32位应用程序注册或反之亦然/

其他 2022/1/1 18:14:45 有601人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶