資源簡介
實時獲取DOS的輸出結果,顯示在C#窗口中。
為了避免阻塞主線程,把執行過程放在一個新的Thread中,防止了DOS執行中,C#窗口“假死”現象。
網上有個管道實現DOS輸出的程序,沒看懂,也不能編譯,卻被各網站,很多人轉載。
CSDN上有個程序,可以捕獲dos輸出,但執行過程中窗口會”假死“,這里用新的線程避免了假死。可以在vs.net 2005上運行

代碼片段和文件信息
using?System;
using?System.Collections.Generic;
using?System.ComponentModel;
using?System.Data;
using?System.Drawing;
using?System.Text;
using?System.Windows.Forms;
using?System.Threading;
using?System.Diagnostics;
using?System.IO;
//using?System.Collections.Generic;
namespace?Guandao
{
????public?partial?class?Form1?:?Form
????{
????????public?Form1()
????????{
????????????InitializeComponent();
????????}
????????private?void?button1_Click(object?sender?EventArgs?e)
????????{
????????????Process?proc?=?new?Process();
????????????proc.StartInfo.FileName?=?“cmd.exe“;
????????????//proc.StartInfo.WorkingDirectory?=?
????????????proc.StartInfo.CreateNoWindow?=?true;
????????????proc.StartInfo.UseShellExecute?=?false;
????????????proc.StartInfo.RedirectStandardOutput?=?true;
????????????proc.StartInfo.RedirectStandardError?=?true;
????????????proc.StartInfo.RedirectStandardInput?=?true;
????????????proc.Start();
????????????proc.StandardInput.WriteLine(this.textBox1.Text);
????????????proc.StandardInput.WriteLine(“exit“);
????????????StreamReader?reader?=?proc.StandardOutput;
????????????string?line?=?reader.ReadLine();
????????????while?(!reader.EndOfStream)
????????????{
????????????????this.richTextBox1.AppendText(line+“\r“);
????????????????this.richTextBox1.Selectionstart?=?this.richTextBox1.Text.Length;
????????????????this.richTextBox1.ScrollToCaret();
????????????????line?=?reader.ReadLine();
????????????}
????????????proc.WaitForExit();
????????????proc.Close();
????????????reader.Close();
????????}
????}
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件??????20480??2010-01-23?00:02??Guandao\Guandao\bin\Debug\Guandao.exe
?????文件??????22016??2010-01-23?00:02??Guandao\Guandao\bin\Debug\Guandao.pdb
?????文件???????5632??2005-11-11?22:25??Guandao\Guandao\bin\Debug\Guandao.vshost.exe
?????文件???????1590??2010-01-23?00:01??Guandao\Guandao\Form1.cs
?????文件???????3858??2010-01-23?00:01??Guandao\Guandao\Form1.Designer.cs
?????文件???????5814??2010-01-23?00:01??Guandao\Guandao\Form1.resx
????.......??????3221??2010-01-22?00:19??Guandao\Guandao\Guandao.csproj
?????文件????????842??2010-01-23?00:02??Guandao\Guandao\obj\Debug\Guandao.csproj.GenerateResource.Cache
?????文件??????20480??2010-01-23?00:02??Guandao\Guandao\obj\Debug\Guandao.exe
?????文件????????180??2010-01-23?00:02??Guandao\Guandao\obj\Debug\Guandao.Form1.resources
?????文件??????22016??2010-01-23?00:02??Guandao\Guandao\obj\Debug\Guandao.pdb
?????文件????????180??2010-01-23?00:02??Guandao\Guandao\obj\Debug\Guandao.Properties.Resources.resources
?????文件????????604??2010-01-23?00:02??Guandao\Guandao\obj\Guandao.csproj.FileListAbsolute.txt
????.......???????466??2010-01-22?00:13??Guandao\Guandao\Program.cs
????.......??????1162??2010-01-22?00:13??Guandao\Guandao\Properties\AssemblyInfo.cs
????.......??????2870??2010-01-22?00:13??Guandao\Guandao\Properties\Resources.Designer.cs
????.......??????5612??2010-01-22?00:13??Guandao\Guandao\Properties\Resources.resx
????.......??????1092??2010-01-22?00:13??Guandao\Guandao\Properties\Settings.Designer.cs
????.......???????249??2010-01-22?00:13??Guandao\Guandao\Properties\Settings.settings
????.......???????910??2010-01-22?00:13??Guandao\Guandao.sln
????..A..H.?????12800??2010-01-23?00:03??Guandao\Guandao.suo
?????目錄??????????0??2010-01-22?23:54??Guandao\Guandao\obj\Debug\TempPE
?????目錄??????????0??2010-01-23?00:02??Guandao\Guandao\bin\Debug
?????目錄??????????0??2010-01-23?00:02??Guandao\Guandao\obj\Debug
?????目錄??????????0??2010-01-22?23:54??Guandao\Guandao\bin
?????目錄??????????0??2010-01-23?00:02??Guandao\Guandao\obj
?????目錄??????????0??2010-01-22?23:54??Guandao\Guandao\Properties
?????目錄??????????0??2010-01-23?00:01??Guandao\Guandao
?????目錄??????????0??2010-01-22?23:54??Guandao
-----------?---------??----------?-----??----
............此處省略2個文件信息
- 上一篇:C#多進制計算器源代碼
- 下一篇:通過MODBUS TCP讀寫PLC源碼
評論
共有 條評論