繁体   English   中英

如何获得命令控制台在Windows Forms应用程序中写行? (Visual C#)

[英]How Do I Get The Command Console To Write Lines In Windows Forms Application? (Visual c#)

基本上,我希望用户按下按钮,然后控制台将为用户编写所有适当的行。

这是我编写的代码:

    private void button6_Click(object sender, EventArgs e)
    {
        Process Cmd = new Process();
        Cmd.StartInfo.FileName = @"C:\windows\system32\cmd.exe";
        Cmd.Start();
        StreamWriter sw = new StreamWriter(@"C:\windows\system32\cmd.exe");
        {
            sw.WriteLine = ("hello");
        }
    }

我尝试了StreamWriter,但似乎没有合作。

你可以做这样的事情

   Process Cmd = new Process();
            Cmd.StartInfo.FileName = @"makecert.exe"; // enter the correct path
            cmd.StartInfo.Argument = "" // pass your aarguemnt
            Cmd.Start();

无法完成您想做的事情,因为您需要重定向StandardInput才能将命令发送到cmd,并且执行此操作后,cmd窗口将关闭。 您仍然没有解释要归档的内容,但是我只能想到两个选择:

  • 使用要执行的所有命令创建一个批处理文件,并将其作为参数传递给Process。
  • 重定向StandardInput和StandardOutput。 这样,您应该注意显示所有cmd消息。 这有点混乱,可能会导致您陷入僵局。

编辑

因此,最后,您只需要运行带有参数的控制台应用程序即可。 这是使用makecert的示例:

Process ppp = new Process();
ProcessStartInfo psi = new ProcessStartInfo();
psi.FileName = @"C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\makecert.exe";
psi.Arguments = "-n 'CN=TempCA' -r -sv TempCA.pvk TempCA.cer";

ppp.StartInfo = psi;
ppp.Start();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM