#调用一个垃圾清理软件的.BAT。
这个BAT再运行的时候不是显示删除了什么什么的吗。
我想把这些信息显示再C#的文本框上显示。改如何呢?
====================================
try this
C# code
OpenFileDialog dlg = new OpenFileDialog();
dlg.Filter = "bat文件|*.bat|cmd文件|*.cmd";
if (dlg.ShowDialog() == DialogResult.OK)
{
StreamReader sr = File.OpenText(dlg.FileName);
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();
while (sr.Peek() != -1)
{
string line = sr.ReadLine();
p.StandardInput.WriteLine(line);
}
sr.Close();
p.StandardInput.WriteLine("exit");
string response = p.StandardOutput.ReadToEnd();
string[] strLines = response.Split(new char[] { '\r', '\n' });
for (int i = 8; i < strLines.Length-6; i++)
{
textBox1.AppendText(string.Format("{0}\r\n", strLines[i]));
}
p.Close();
}
==============================
如果你执行方法的时间比较长。可以修改为这个
C# code
OpenFileDialog dlg = new OpenFileDialog();
dlg.Filter = "bat文件|*.bat|cmd文件|*.cmd";
if (dlg.ShowDialog() == DialogResult.OK)
{
StreamReader sr = File.OpenText(dlg.FileName);
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();
while (sr.Peek() != -1)
{
string line = sr.ReadLine();
p.StandardInput.WriteLine(line);
}
sr.Close();
p.StandardInput.WriteLine("exit");
p.WaitForExit();
string response = p.StandardOutput.ReadToEnd();
string[] strLines = response.Split(new char[] { '\r', '\n' });
for (int i = 8; i < strLines.Length - 6; i++)
{
textBox1.AppendText(string.Format("{0}\r\n", strLines[i]));
}
p.Close();
}
相关文章
- C# 调用配置文件SQL语句 真2B!
- C#程序调用cmd执行命令-MySql备份还原
- JavaScript日历控件开发 C# 读取 appconfig文件配置数据库连接字符串,和配置文件 List
.ForEach 调用异步方法的意外 ef 增加或者更新的习惯思维 asp.net core导入excel 一个二级联动 - C#程序调用cmd.exe执行命令
- C# 调用WebService的3种方式 :直接调用、根据wsdl生成webservice的.cs文件及生成dll调用、动态调用
- ASP.NET、C#调用外部可执行exe文件--多种方案
- C#调用mciSendString播放音频文件
- C#实现反射调用动态加载的DLL文件中的方法
- 通过计划任务 bat调用php.exe执行php文件
- 用一个bat文件调用另外两个bat文件,当1.bat执行完后再执行2.bat