如何在C#

时间:2016-06-28 11:09:11

标签: c# cmd execution

我在C#中执行命令行时遇到问题:

Screenshot

我试试:

String Mon_CMD=@"C:\Windows\system32>ConsoleTest.exe --asMRZ C:\temp\TEST_CMD\image.jpg C:\temp\TEST_CMD\";

System.Diagnostics.Process.Start("cmd.exe", @"/C ' Mon_CMD'");

但我总是收到错误。

如何执行这个确切的命令?

1 个答案:

答案 0 :(得分:1)

提供的ConsoleTest.exe位于C:\ Windows \ system32中(这似乎不是一个好主意,但这是另一个主题)

String Mon_CMD = @"C:\Windows\system32\ConsoleTest.exe";
String arguments = @"--asMRZ C:\temp\TEST_CMD\image.jpg C:\temp\TEST_CMD\";

System.Diagnostics.Process.Start(Mon_CMD, arguments);

应该做的工作

正如cFrozenDeath和Nyerguds所建议的,如果你想在另一个字符串中使用Mon_CMD,你有几个选项,例如:使用+运算符构建一个新字符串,StringBuilder或者如果你使用C#6字符串插值:< / p>

string arguments = $"/C ' {Mon_CMD}'";

(你不需要一个逐字字符串)