1

我正在使用注册表项从我机器的已安装文件夹中访问 XML 文件的路径。我的机器有 32 位操作系统。所以我正在使用

using (RegistryKey pRegKey = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Wow6432Node\Folder\subfolder\key"))
{
    if (pRegKey == null)
    {
        return;
    } 
    else
        // get path

但是当我在 64 位机器上运行它时,它会显示错误,因为我没有处理 64 位操作系统的异常情况。

我该如何处理??

4

1 回答 1

2

如果您的应用程序是 32 位的,并且您想在 32 位和 64 位操作系统上安装它,请使用以下命令:

string regPath = string.Format(@"SOFTWARE\{0}AppName\Folder\subfolder\key", 
                      Environment.Is64BitProcess ? @"Wow6432Node\" : string.Empty());

using (RegistryKey pRegKey = Registry.LocalMachine.OpenSubKey(regPath))
        {
             .....
于 2013-01-21T09:30:47.690 回答