- private static string InvokeExcute(string Command)
- {
- Command = Command.Trim().TrimEnd('&') + "&exit";
- using (Process p = new Process())
- {
- p.StartInfo.FileName = "cmd.exe";
- p.StartInfo.UseShellExecute = false; //是否使用操作系统shell启动
- p.StartInfo.RedirectStandardInput = true; //接受来自调用程序的输入信息
- p.StartInfo.RedirectStandardOutput = true; //由调用程序获取输出信息
- p.StartInfo.RedirectStandardError = true; //重定向标准错误输出
- p.StartInfo.CreateNoWindow = true; //不显示程序窗口
- p.Start();//启动程序
- //向cmd窗口写入命令
- p.StandardInput.WriteLine(Command);
- p.StandardInput.AutoFlush = true;
- //获取cmd窗口的输出信息
- StreamReader reader = p.StandardOutput;//截取输出流
- string str = reader.ReadToEnd();
- p.WaitForExit();//等待程序执行完退出进程
- p.Close();
- return str;
- }
- }
- string str = InvokeExcute("ipconfig");
- Console.WriteLine(str);