想用C# 调用cmd 黑屏,并在调出来的黑屏里,执行一串命令,并在黑屏里显示命令的运行结果?

解决方案 »

  1.   

                Process proc = new Process();
                proc.StartInfo.FileName = "cmd.exe";
                proc.StartInfo.UseShellExecute = false;
                proc.StartInfo.RedirectStandardInput = true;
                proc.StartInfo.RedirectStandardOutput = true;
                proc.StartInfo.RedirectStandardError = true;
                try
                {
                    proc.Start();
                    string command = @"Ipconfig" + Environment.NewLine()+"pause";
                    proc.StandardInput.WriteLine(command);
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.Message);
                }
                finally
                {
                    proc.Close();
                    proc.Dispose();
                    GC.Collect();
                }
      

  2.   

     if (windowState == "定时关机")
                    {
                        timerTest.Enabled = false;
                        Process p = new Process();
                        p.StartInfo.FileName = "cmd.exe";
                        p.StartInfo.UseShellExecute = false;
                        p.StartInfo.RedirectStandardInput = true;
                        p.StartInfo.RedirectStandardOutput = true;
                        p.StartInfo.CreateNoWindow = true;
                        p.Start();
                        p.StandardInput.WriteLine("shutdown -s -t 0");//关机
                        p.StandardInput.WriteLine("exit");
                        p.Close();
                    }
      

  3.   

    LZ 这是我自己收藏的 分享给你、希望可以帮到你   有关 C# 代码调用 Cmd的:
    private string RunCmd(string command)
    {
                 //实例一个Process类,启动一个独立进程
                  Process p = new Process();
      
                  //Process类有一个StartInfo属性,这个是ProcessStartInfo类,包括了一些属性和方法,下面我们用到了他的几个属性:
      
                  p.StartInfo.FileName = "cmd.exe";           //设定程序名
                  p.StartInfo.Arguments = "/c " + command;    //设定程式执行参数
                 p.StartInfo.UseShellExecute = false;        //关闭Shell的使用
                 p.StartInfo.RedirectStandardInput = true;   //重定向标准输入
                 p.StartInfo.RedirectStandardOutput = true;  //重定向标准输出
                 p.StartInfo.RedirectStandardError = true;   //重定向错误输出
                 p.StartInfo.CreateNoWindow = true;          //设置不显示窗口
     
                 p.Start();   //启动
                 
                 //p.StandardInput.WriteLine(command);       //也可以用这种方式输入要执行的命令
                 //p.StandardInput.WriteLine("exit");        //不过要记得加上Exit要不然下一行程式执行的时候会当机
                 
                 return p.StandardOutput.ReadToEnd();        //从输出流取得命令执行结果
     
             }
    private   void   CmdNetUse()     
    {       
          Process   p   =   new   Process();       
          p.StartInfo.FileName   =   "cmd.exe ";       
          p.StartInfo.UseShellExecute   =   false;       
          p.StartInfo.RedirectStandardInput   =   true;       
          p.StartInfo.RedirectStandardOutput   =   true;       
          p.StartInfo.RedirectStandardError   =   true;       
          p.StartInfo.CreateNoWindow   =   true;       
          p.Start();       
          p.StandardInput.WriteLine(@ "net   use   \\172.16.17.92    er:username   password "); 
          p.StandardInput.WriteLine( "exit ");       
          string   strRst   =   p.StandardOutput.ReadToEnd();       
          if(strRst.IndexOf( "命令成功完成 ")   !=   -1   )       
          {         
                Response.Write( " <script   language= 'javascript '> alert( '命令成功完成 '); </script> ");       
          }     

    以上两个都差不多、 LZ 你看一下、能否用得到、希望可以帮到你、
      

  4.   


    using System;
    using System.Text;
    using System.Diagnostics;
    class test
    {
    static void Main()
    {
               Process p = new Process();
               p.StartInfo.FileName="cmd.exe";
       //显示CMD窗口,如果设为false则不显示,适合后台作业
               p.StartInfo.CreateNoWindow=true;
               Console.WriteLine("请输入要执行的命令");
       bool isinput=false;
               if(isinput==false)
               {
                   string s=Console.ReadLine();
                   Console.WriteLine("你输入的是"+s);
    isinput=true;
               }
    }
    }
    基本原理代码就是如此~~~~~~~~~关键要看你要操作什么,如果操作复杂,也不是一件容易的事
      

  5.   

    process.start("cmd /k " & 你的命令)
    cmd 
    /k 保留执行命令
    /c 执行命令后关闭窗口
      

  6.   

    process.start("cmd /k " & 你的命令)
      

  7.   


    自己先敲10遍最基础的代码,然后调用winrar制作DOS版的压缩解压软件,你就精通这个命令了