C# 和Dos窗口的交互

class Program
{
static void Main(string[] args)
{
Console.WriteLine("begin");

var file = @"D:\book\RR\RR.csproj";
Console.WriteLine("hello world");
var dosLine = $"upgrade-assistant upgrade {file}";

Process ipconfigProcess = new Process();
// Indicate that we want to execute ipconfig
ipconfigProcess.StartInfo.FileName = "upgrade-assistant";
ipconfigProcess.StartInfo.Arguments = $"upgrade {file}";
// Indicate that we want to read the command line output
ipconfigProcess.StartInfo.RedirectStandardOutput = true;
ipconfigProcess.StartInfo.UseShellExecute = false;
ipconfigProcess.StartInfo.RedirectStandardInput = true;

 

ipconfigProcess.OutputDataReceived += IpconfigProcess_OutputDataReceived;

// Start the process to execute ipconfig
ipconfigProcess.Start();
// Get a StreamReader to read from the standard output of
// the ipconfig process
StreamReader reader = ipconfigProcess.StandardOutput;
var input = ipconfigProcess.StandardInput;
// Perform reading and writing of standard output to Console
String line;
string sumLine = "";

while ((line = reader.ReadLine()) != null)
{
sumLine += line + "\r\n";
Console.WriteLine(line);
input.WriteLine(1);
} // end while


Console.ReadKey();

Console.WriteLine("end");
Console.ReadKey();
}

private static void IpconfigProcess_OutputDataReceived(object sender, DataReceivedEventArgs e)
{
Console.WriteLine(e.Data);
}
}

posted @   MaxBruce  阅读(62)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
历史上的今天:
2021-01-18 Git可视化极简易教程 — Git GUI使用方法
2021-01-18 图解Windows下 GIT GUI 使用教程
点击右上角即可分享
微信分享提示