C#Registry Import

时间:2017-02-24 15:13:46

标签: c# import permissions registry

我正在尝试导入之前通过C#保存的注册表值。 每次导入时都会运行Regedit,但值不会更改。我以管理员身份运行时获得的唯一区别是UAC在未提升时提示regedit。 Regedit似乎仍在运行,但似乎没有读取和导入.reg文件。

  Import:
        {

            if (openFileDialog1.ShowDialog() == DialogResult.OK)
            {

                string FullPath = openFileDialog1.FileName;

                MessageBox.Show(Convert.ToString(FullPath));

                Process regeditProcess = Process.Start("regedit.exe", "/s" + FullPath);
                regeditProcess.WaitForExit();
            }



            return;
        }

1 个答案:

答案 0 :(得分:2)

问题可能是FullPath中有空格。 而不是:

Process regeditProcess = Process.Start("regedit.exe", "/s" + FullPath);

试试这个:

Process regeditProcess = Process.Start("regedit.exe", "/s \"" + FullPath + "\"");