C#如何在运行的控制台中弹出命令提示符(CMD)?

时间:2019-04-04 05:22:22

标签: c# .net

在C#中,运行新进程cmd并将命令(例如ping 127.0.0.1 -t)发送到cmd 然后将Standardoutput重定向到控制台。 但是在编译中,我看不到在弹出窗口中运行的cmd,只知道命令在隐藏状态下运行。 如何显示命令提示符,如控制台弹出?我想同时看到控制台窗口和命令提示符。

如果我不从cmd重定向,而仅将命令(ex dir)发送到cmd, 仍然没有显示命令提示符窗口,仅显示控制台窗口。

        Process proc_cmd = new Process();
        ProcessStartInfo startinfo = new ProcessStartInfo();
        startinfo.FileName = "cmd.exe";
        startinfo.WorkingDirectory = @"c:\";

        startinfo.UseShellExecute = false;//to use RedirectStandard~
        startinfo.RedirectStandardInput = true;
        startinfo.RedirectStandardOutput = true;
        startinfo.RedirectStandardError = true;

        proc_cmd.EnableRaisingEvents = false;
        proc_cmd.StartInfo = startinfo;
        proc_cmd.Start();
        proc_cmd.StandardInput.Write(@"ping 127.0.0.1 -t" + 
        Environment.NewLine);
        proc_cmd.StandardInput.Close();

2 个答案:

答案 0 :(得分:1)

在命令提示符下输入start

start

这将打开一个新的cmd窗口。

答案 1 :(得分:0)

如果需要在调试时查看控制台,则可能需要以下内容:

@Query("{\"bool\" : {\"must\" : {\"bool\" : {\"should\" : [ {\"terms\" : {\"vendor\" : ?0}} ]}}}}")
List findByVendorIds(List vendorIds);