我在C#中执行命令行时遇到问题:
我试试:
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'");
但我总是收到错误。
如何执行这个确切的命令?
答案 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}'";
(你不需要一个逐字字符串)