C# 从C运行CMD命令#
我试图从C#控制台应用程序运行以下cmd命令,该命令在cmd上运行,但什么也没发生:C# 从C运行CMD命令#,c#,cmd,C#,Cmd,我试图从C#控制台应用程序运行以下cmd命令,该命令在cmd上运行,但什么也没发生: string strCmdText = "\\office\\Public\\Tools\\myTool\\myTool_V1.0\\myTool.exe -kan tools -kdb Adhoc - ktn Components3 - uri https://coprime.osdinfra.net"; System.Diagnostics.Process.Start("CMD.ex
string strCmdText = "\\office\\Public\\Tools\\myTool\\myTool_V1.0\\myTool.exe -kan tools -kdb Adhoc - ktn Components3 - uri https://coprime.osdinfra.net";
System.Diagnostics.Process.Start("CMD.exe", strCmdText);
在VS中按F5后,cmd窗口被紧急关闭,因此我看不到“myTool.exe”的输出-实际上,当从cmd窗口运行时,它会在cmd上打印进度状态
此外,该计划的预期效果没有发生,所以我知道它不起作用
需要帮助请命令提示符不接受程序作为启动参数。但是,我看不出在这里使用命令提示符的原因。您的代码正在启动进程“Cmd.exe”,因此它可以启动另一个进程。为什么不除掉中间人,开始你想开始的过程呢?然后可以将进程的实际参数作为参数传递到process.start()中 更新: 您可以从命令提示符启动程序,但它是一个特定的命令。事情是这样的: CMD.exe/c{要执行的命令字符串} 例如,如果需要,您可以通过cmd运行它,方法如下:
string strCmdText = "/c start \\office\\Public\\Tools\\myTool\\myTool_V1.0\\myTool.exe -kan tools -kdb Adhoc - ktn Components3 - uri https://coprime.osdinfra.net";
System.Diagnostics.Process.Start("CMD.exe", strCmdText);
命令提示符不接受程序作为启动参数。但是,我看不出在这里使用命令提示符的原因。您的代码正在启动进程“Cmd.exe”,因此它可以启动另一个进程。为什么不除掉中间人,开始你想开始的过程呢?然后可以将进程的实际参数作为参数传递到process.start()中 更新: 您可以从命令提示符启动程序,但它是一个特定的命令。事情是这样的: CMD.exe/c{要执行的命令字符串} 例如,如果需要,您可以通过cmd运行它,方法如下:
string strCmdText = "/c start \\office\\Public\\Tools\\myTool\\myTool_V1.0\\myTool.exe -kan tools -kdb Adhoc - ktn Components3 - uri https://coprime.osdinfra.net";
System.Diagnostics.Process.Start("CMD.exe", strCmdText);
您正在从控制台应用程序打开命令提示窗口?为什么?运行
.exe
,可能不需要重复cmd
,但只要您使用cmd
,它就需要一个选项标志–cmd/C\path\to\app.exe
。我要说多少次。指定完整路径并停止依赖您不控制的默认目录。是否从控制台应用程序打开命令提示窗口?为什么?运行.exe
,可能不需要重复cmd
,但只要您使用cmd
,它就需要一个选项标志–cmd/C\path\to\app.exe
。我要说多少次。指定完整路径并停止依赖您不控制的默认目录。是否需要“start”关键字,以及/c是否应该为大写字母c?我发现没有start关键字它无法工作。我相信这是一个小写的cIs,“开始”关键字是必需的,并且/c是否应该是大写的c?我发现没有开始关键字它是不起作用的。我相信是小写的c