0
我想創建一個切換註冊表值的文件。更改控制檯應用程序中的註冊表值
我試圖讓它獲得價值,然後根據結果採取行動。我不太喜歡控制檯應用程序。該計劃似乎掛起。我究竟做錯了什麼?
Process p = new Process();
ProcessStartInfo psi = new ProcessStartInfo();
psi.CreateNoWindow = true;
psi.UseShellExecute = false;
psi.RedirectStandardOutput = true;
psi.FileName = "c:\\windows\\syswow64\\cmd.exe";
psi.Arguments = "reg query HKLM\\SOFTWARE\\Microsoft\\VisualStudio\\9.0\\AD7Metrics\\Engine\\{F200A7E7-DEA5-11D0-B854-00A0244A1DE2} /v ProgramProvider /s";
p.StartInfo = psi;
p.Start();
if (p.StandardOutput.ReadToEnd().Contains("3FFA64D1D639"))
psi.Arguments = "reg add HKLM\\SOFTWARE\\Microsoft\\VisualStudio\\9.0\\AD7Metrics\\Engine\\{F200A7E7-DEA5-11D0-B854-00A0244A1DE2} /v ProgramProvider /d {170EC3FC-4E80-40AB-A85A-55900C7C70DE} /f";
else
psi.Arguments = "reg add HKLM\\SOFTWARE\\Microsoft\\VisualStudio\\9.0\\AD7Metrics\\Engine\\{F200A7E7-DEA5-11D0-B854-00A0244A1DE2} /v ProgramProvider /d {4FF9DEF4-8922-4D02-9379-3FFA64D1D639} /f";
p.StartInfo = psi;
p.Start();
你爲什麼不使用'Registry.GetValue(...)'? – MoonKnight 2012-03-15 13:45:18
請參閱'Microsoft.Win32.Registry'命名空間。 – Rotem 2012-03-15 14:00:59