我需要从我的C#应用程序启动一个完整的命令行,如“app.exe/arg1:1/arg2:true”。启动一个命令行,包括来自C#的参数#
Process.Start和ProcessStartInfo需要设置文件名和参数属性。有没有办法模仿一个真正的类似shell的执行(就像当你按WIN + R时那样)?
我需要从我的C#应用程序启动一个完整的命令行,如“app.exe/arg1:1/arg2:true”。启动一个命令行,包括来自C#的参数#
Process.Start和ProcessStartInfo需要设置文件名和参数属性。有没有办法模仿一个真正的类似shell的执行(就像当你按WIN + R时那样)?
是的,您可以启动cmd.exe
并将您想要发送的完整命令行作为参数。
info.FileName = "cmd.exe";
info.Arguments = "app.exe /arg1:1 /arg2:true";
ProcessStartInfo.UseShellExecute做的Process.Start完全一样的外壳: http://msdn.microsoft.com/en-us/library/system.diagnostics.processstartinfo.useshellexecute.aspx
我发现我一直在寻找的解决方案:对你的帮助再次Executing another program from C#, do I need to parse the "command line" from registry myself?
谢谢!
使用Process.Start找到了哪些缺陷? – Oded 2011-01-26 16:35:11
批处理文件如何启动进程并使用Process.Start启动批处理文件? – CodingBarfield 2011-01-26 16:36:03
命令行来自配置文件并作为一个整体提供。我只是想模仿WIN + R的功能。我认为即使VBScript有办法做我需要的... – 2011-01-27 10:23:04