Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Running DOS command through C# just opens blank cmd window

I was trying to execute a command through C#, but when I run the following code, a blank cmd window just opens up. The code:

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);

What could be wrong? I am sure the syntax is right.

like image 492
Mohit Deshpande Avatar asked Dec 09 '22 16:12

Mohit Deshpande


1 Answers

You need to add the /c argument before your command.

The /c argument tells the command processor to open, run the specified command, then close when it's done

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);

For a complete list of arguments please refer to the documentation for cmd.

like image 176
Alexandre Pepin Avatar answered Jan 20 '23 08:01

Alexandre Pepin