using System.Diagnostics;
Process p = new Process();
p.StartInfo.FileName = "cmd.exe";
// 这里是关键点,不用Shell启动/重定向输入/重定向输出/不显示窗口
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardInput = true;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.CreateNoWindow = true;
p.Start();
p.StandardInput.WriteLine("ping 127.0.0.1");// 向cmd.exe输入command
p.StandardInput.WriteLine("exit");
p.WaitForExit(60000);
string s = p.StandardOutput.ReadToEnd();// 得到cmd.exe的输出
p.Close();
p.StartInfo.FileName = "cmd.exe";
// 这里是关键点,不用Shell启动/重定向输入/重定向输出/不显示窗口
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardInput = true;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.CreateNoWindow = true;
p.Start();
p.StandardInput.WriteLine("ping 127.0.0.1");// 向cmd.exe输入command
p.StandardInput.WriteLine("exit");
p.WaitForExit(60000);
string s = p.StandardOutput.ReadToEnd();// 得到cmd.exe的输出
p.Close();
本文介绍了一种使用C#编程语言调用Windows命令行工具CMD的方法,并通过该方法执行Ping命令来测试网络连接。具体实现包括创建一个不使用外壳程序、重定向标准输入/输出且不显示新窗口的进程,然后向CMD发送Ping命令并获取其返回结果。
1114

被折叠的 条评论
为什么被折叠?



