您的位置:首页 > 编程语言 > C#

64位操作系统注册表与C#对注册表操作

2013-10-12 10:45 197 查看
    64位windows中包含了32位的和64位的两套系统程序,分别位于C:\Program Files (x86)和C:\Program
Files中。IE,MediaPlayer等都有32位和64位两个版本的。在64位的操作系统中,32程序和64位程序读取的是位置的注册表项,HKEY_LOCAL_MACHINE\Software在
64 位版本的注册表编辑器中对应的是64位程序的注册表项,而32
位注册表项被映射为HKEY_LOCAL_MACHINE\Software\WOW6432Node。如果要两个版本都生效的话,需要同时修改这两个地方的表项。

    C#对注册表操作的时候也得注意,读取方法一般用:RegistryKey key = Registry.LocalMachine.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", true);(这里是系统自动启动项为例)。在项目->属性->生成页面中中有一个目标平台的选项,这里如果选择Any CPU,上面的key值包含64位和32位两个注册表项的取值,如果该选项选择的是X86则key值只包含32位注册表对应的取值。在对注册表更新操作中也是如此,例如添加一个注册表项,如果选择的是X86则只添加到32注册表对应项下。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: