我正在尝试导入之前通过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;
}
答案 0 :(得分:2)
问题可能是FullPath
中有空格。
而不是:
Process regeditProcess = Process.Start("regedit.exe", "/s" + FullPath);
试试这个:
Process regeditProcess = Process.Start("regedit.exe", "/s \"" + FullPath + "\"");