注册表这个东西,我们平常用的很少。真正在开发中遇到使用的时候,大多也是现学现卖。如果你遇到了如题的那种窘况,很可能是操作系统的位数原因导致的。
不要直接使用:
var localMachineKey=Registry.LocalMachine;
而是使用如下与计算机位数相关的代码
var useRegistryView = Environment.Is64BitOperatingSystem ? RegistryView.Registry64 : RegistryView.Registry32;
var localMachineKey = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, useRegistryView);