Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/265.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在Windows7c上访问注册表#_C#_Windows 7_Registry - Fatal编程技术网

C# 在Windows7c上访问注册表#

C# 在Windows7c上访问注册表#,c#,windows-7,registry,C#,Windows 7,Registry,我试图制作一个更新程序,当更新时,它会将一个版本号写入Windows7注册表,主程序在检查更新时会读取该注册表。我在微软的页面上浏览了UAC虚拟化知识库,但什么也没找到。我的app.manifest已被删除 <requestedExecutionLevel level="highestAvailable" uiAccess="false" /> 有什么想法/建议吗?如果您的应用程序针对x86平台,在x64系统上运行时,它将使用具有以下名称的相应注册表节点: HKEY_LOCAL_

我试图制作一个更新程序,当更新时,它会将一个版本号写入Windows7注册表,主程序在检查更新时会读取该注册表。我在微软的页面上浏览了UAC虚拟化知识库,但什么也没找到。我的app.manifest已被删除

<requestedExecutionLevel  level="highestAvailable" uiAccess="false" />

有什么想法/建议吗?

如果您的应用程序针对x86平台,在x64系统上运行时,它将使用具有以下名称的相应注册表节点:

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\或HKEY_CURRENT_USER\SOFTWARE\Wow6432Node

因此,如果为构建将平台目标设置为x86,则在x86系统上,它将处于HKEY_LOCAL_MACHINE\软件下,而在x64系统上,它将处于HKEY_LOCAL_MACHINE\软件\Wow6432Node下,这是在WOW64(Windows 64位上的Windows 32位)模式下运行的应用程序的保留节点


有关更多信息,请参见构建目标平台是什么?x86、x64或任何CPU?当你说它不在
HKEY_用户
中时,你的意思是它不在
HKCU\Software
中,或者不在UAC虚拟化区域?为x86构建的@本·沃格特——这两种语言都不适用。我在更新程序运行时检查了这两个选项。如果您在64位环境中运行,请检查以下位置。HKEY\U LOCAL\U MACHINE\SOFTWARE\Wow6432Node\…好的,找到注册表项,谢谢!现在还有一个问题。如果其他人在x86或x64上使用更新程序,它会去同一个地方吗?
            Registry.LocalMachine.CreateSubKey("SOFTWARE\\build");
        RegistryKey myKey = Registry.LocalMachine.OpenSubKey("SOFTWARE\\build", true);

        myKey.SetValue("build", "3", RegistryValueKind.String);