为什么我可以';t请参阅';wow6432节点';当使用process.start(“regedit.

本文关键字:process start regedit 节点 我可以 请参阅 wow6432 为什么 | 更新日期: 2023-09-27 18:27:31

我遇到了一些问题。。在C#中

当我通过代码执行regedit.exe时,在x64操作系统中,它没有显示

HKLM'SOFTWARE''wow6432node'

但当我执行regedit.exeWindow Key + R时,它会向我显示wow6432node

我怎样才能出现wow6432node?我不知道怎么出现。。。

这是我的代码

        private void RegeditCall_Click(object sender, EventArgs e)
        {
            Process.Start("C:''Windows''regedit.exe");
        }

        private void RegeditCall_Click(object sender, EventArgs e)
        {
            Process.Start("regedit.exe");
        }

为什么我可以';t请参阅';wow6432节点';当使用process.start(“regedit.

您尝试过吗:

System.Diagnostics.Process.Start("regedit.exe");

我已经用LinqPad在x64机器上测试了这段代码,并且可以工作。

这是的原始主题

编辑

这可能很有用http://www.rhyous.com/2011/01/24/how-read-the-64-bit-registry-from-a-32-bit-application-or-vice-versa/

我刚刚遇到了同样的问题:检查你的C#应用程序不是为x86构建的。

如果一个32位进程执行regedit,那么windows将启动32位版本的regedit。在这个版本中,HKLM''Software实际上指向HKLM''Software''Wow6432Node。

如果您使用start->run->regedit(假设您运行的是64位版本的windows),这将启动64位版本。现在您可以看到HKLM(或HKCU)Wow6432Node键存在。