通过C#运行DOS命令只会打开一个空白的命令提示符窗口

4

我试图通过C#执行一个命令,但当我运行以下代码时,只会打开一个空白的cmd窗口。代码:

string command = string.Format(@"adb install C:\Users\Mohit\Programming\Android_Workspace\{0}\bin\{0}.apk", appName);
ProcessStartInfo cmdsi = new ProcessStartInfo("cmd.exe");
cmdsi.Arguments = command;
Process cmd = Process.Start(cmdsi);

可能出了什么问题?我确定语法是正确的。
1个回答

14

你需要在命令之前添加 /c 参数。

/c 参数告诉命令处理器打开并运行指定的命令,等命令执行完毕后关闭。

string command = string.Format(@"/c adb install C:\Users\Mohit\Programming\Android_Workspace\{0}\bin\{0}.apk", appName);
ProcessStartInfo cmdsi = new ProcessStartInfo("cmd.exe");
cmdsi.Arguments = command;
Process cmd = Process.Start(cmdsi);

要获取完整的参数列表,请参考cmd文档


什么参数告诉命令处理器完成任务后不要关闭? - Mohit Deshpande
5
完整参数列表请参见:http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/cmd.mspx?mfr=true。 - Alexandre Pepin

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接