zoukankan      html  css  js  c++  java
  • .NET程序页面中,操作并输入cmd命令

    WinFormsApp_OperateAndInputCMD:

    新建Form1,拖入TextBox,并设为允许多行,Dock设为Fill,然后绑定KeyUp事件即可

    执行代码如下:

    private void txtCmdInput_KeyUp(object sender, KeyEventArgs e)
          {
              if (e.KeyCode == Keys.Enter)
              {
                  int count = txtCmdInput.Lines.Length;
                  if (count == 0) return;
     
                  while (count > 0 && (string.IsNullOrEmpty(txtCmdInput.Lines[count - 1])))
                  {
                      count--;
                  }
     
                  if (count > 0)// && !string.IsNullOrEmpty(txtCmdInput.Lines[count - 1]))
                      ExecuteCmd(txtCmdInput.Lines[count - 1]);
              }
          }
     
          public void ExecuteCmd(string cmd)
          {
              System.Diagnostics.Process p = new System.Diagnostics.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.AutoFlush = true;           //写入命令      
              p.StandardInput.WriteLine(cmd);
              p.StandardInput.WriteLine("exit");          //等待结束   
     
              txtCmdInput.AppendText(p.StandardOutput.ReadToEnd());
              p.WaitForExit();
              p.Close();
          }

    执行效果图:

    image

  • 相关阅读:
    [BZOJ2738]矩阵乘法
    [BZOJ2084][Poi2010]Antisymmetry
    [BZOJ2095][Poi2010]Bridges
    [BZOJ1294][SCOI2009]围豆豆Bean
    [AtCoderContest075F]Mirrored
    [AtCoderContest015D]A or...or B Problem
    [UOJ#276]【清华集训2016】汽水
    忠诚的皇家守卫团——中间件
    Django(五):视图和路由系统
    Django(四):ORM
  • 原文地址:https://www.cnblogs.com/jx270/p/2947223.html
Copyright © 2011-2022 走看看