大佬好,想问下这个注册表到底是啥,改了干嘛用的??很急!万分求大神!感谢!!
写注册表的程序的目标平台(x86/x64的那个)和当前这个获取注册表信息的程序目标平台不一致导致。改用RegistryKey.OpenBaseKey方法获取LocalMachine。如下:
RegistryKey advanced = null;
RegistryKey LM32 = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry32);
advanced = LM32.OpenSubKey(_advancedPath);
RegistryKey LM64 = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry64);
advanced = LM64.OpenSubKey(_advancedPath);
其中一个必然能获取到
谢谢
我的现象还不太一样 我是本地编译生成的文件可以正常修复注册表 但是发布后就不行。看到你说目标平台可能导致问题出现后修改了发布的目标平台为64位 果然就正常了 感谢大佬