C#processWindowsStyle.Minimized不适用于PSR.exe

C#processWindowsStyle.Minimized不适用于PSR.exe,c#,minimize,C#,Minimize,大师 我正在努力学习C#中的一个基本函数。我不是开发专家,但我想为给定的客户需求开发PoC。欢迎您的指导 我正在使用下面的和平的代码,但是,它不是预期的工作 我想打开psr.exe,但windows样式似乎已被忽略 ProcessStartInfo proc = new ProcessStartInfo("psr.exe"); proc.Arguments = "/start /output ....; proc.WindowStyle = ProcessWindowStyle.Minimize

大师

我正在努力学习C#中的一个基本函数。我不是开发专家,但我想为给定的客户需求开发PoC。欢迎您的指导

我正在使用下面的和平的代码,但是,它不是预期的工作

我想打开psr.exe,但windows样式似乎已被忽略

ProcessStartInfo proc = new ProcessStartInfo("psr.exe");
proc.Arguments = "/start /output ....;
proc.WindowStyle = ProcessWindowStyle.Minimized;
proc.RedirectStandardOutput = true;
proc.UseShellExecute = false;
proc.CreateNoWindow = true;
Process.Start(proc);

提前感谢。

使用shellExecute true并使用管理员权限运行应用程序

string fileName = @"C:\Program Files (x86)\RequiredApp.exe";
Process process = new Process();
process.StartInfo.Arguments = null;
process.StartInfo.CreateNoWindow = true;
process.StartInfo.WindowStyle = ProcessWindowStyle.Minimized;
process.StartInfo.FileName = fileName;
process.StartInfo.UseShellExecute = true;
process.Start();

尝试将其更改为
ProcessWindowStyle.Hidden
@MethodMan谢谢您的回答。我试过了,但得到了同样的结果。psr窗口仍在显示。然后在下面的
C#stackoverflow RedirectStandardOutput
上进行谷歌搜索,这可能是问题所在。将其设置为true就是使用OS shell启动应用程序。我之前的评论不正确,我的意思是“如果
UseShellExecute=true
,它可以工作,但是您不能使用该设置重定向输出”。如果您不需要输出,那么就这样做。另一个选项是使用dllImport,其中需要
var theProcess=Process.Start()
然后
ShowWindow(Process.MainWindowHandle,2)
;您必须
Thread.Sleep(一些时间)
等待主窗口可用。如果ShellExecute为true,重定向输出将无法工作,而OP似乎需要它