我正在开发一个需要使用regini(由于遗留原因)在注册表中插入内容的应用程序。我一直试图以这样的方式做到这一点,应用程序的用户不知道这一点。我写了以下代码:
System.Diagnostics.ProcessStartInfo pi = new ProcessStartInfo();
pi.FileName = @"c:\windows\system32\regini.exe";
pi.Arguments = name;
pi.WorkingDirectory = Utils.AppSettings.WorkingDirectory.ToString();
pi.WindowStyle = ProcessWindowStyle.Hidden;
pi.RedirectStandardError = true;
pi.RedirectStandardOutput = true;
pi.UseShellExecute = false;
Process p = new Process();
p.StartInfo = pi;
p.EnableRaisingEvents = true;
p.Start();
不幸的是,每次执行此代码时,我仍会看到“命令”窗口弹出。我的印象是
pi.WindowStyle = ProcessWindowStyle.Hidden;
会阻止这种情况。如何防止regini打开自己的命令窗口?
答案 0 :(得分:2)
尝试添加此行:
pi.CreateNoWindow = true;
答案 1 :(得分:0)
我在Microsoft Connect反馈网站上发现了此错误报告:System.Diagnostics.ProcessWindowStyle.Hidden shows window while executing
也许有一些你忘了的东西。