C# 启动外部程序的几种方法
生活随笔
收集整理的這篇文章主要介紹了
C# 启动外部程序的几种方法
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
C#?啟動外部程序的幾種方法:
1.?啟動外部程序,不等待其退出。
2.?啟動外部程序,等待其退出。
3.?啟動外部程序,無限等待其退出。
4.?啟動外部程序,通過事件監視其退出。
// using System.Diagnostics; private string appName = "calc.exe";/// <summary> /// 1. 啟動外部程序,不等待其退出 /// </summary> private void button1_Click(object sender, EventArgs e) {Process.Start(appName);MessageBox.Show(String.Format("外部程序 {0} 啟動完成!", this.appName), this.Text,MessageBoxButtons.OK, MessageBoxIcon.Information); }/// <summary> /// 2. 啟動外部程序,等待其退出 /// </summary> private void button2_Click(object sender, EventArgs e) {try{Process proc = Process.Start(appName);if (proc != null){proc.WaitForExit(3000);if (proc.HasExited)MessageBox.Show(String.Format("外部程序 {0} 已經退出!", this.appName), this.Text,MessageBoxButtons.OK, MessageBoxIcon.Information);else{// 如果外部程序沒有結束運行則強行終止之。 proc.Kill();MessageBox.Show(String.Format("外部程序 {0} 被強行終止!", this.appName), this.Text,MessageBoxButtons.OK, MessageBoxIcon.Exclamation);}}}catch (ArgumentException ex){MessageBox.Show(ex.Message, this.Text,MessageBoxButtons.OK, MessageBoxIcon.Error);} }/// <summary> /// 3. 啟動外部程序,無限等待其退出 /// </summary> private void button3_Click(object sender, EventArgs e) {try{Process proc = Process.Start(appName);if (proc != null){proc.WaitForExit();MessageBox.Show(String.Format("外部程序 {0} 已經退出!", this.appName), this.Text,MessageBoxButtons.OK, MessageBoxIcon.Information);}}catch (ArgumentException ex){MessageBox.Show(ex.Message, this.Text,MessageBoxButtons.OK, MessageBoxIcon.Error);} }/// <summary> /// 4. 啟動外部程序,通過事件監視其退出 /// </summary> private void button4_Click(object sender, EventArgs e) {try{// 啟動外部程序Process proc = Process.Start(appName);if (proc != null){// 監視進程退出proc.EnableRaisingEvents = true;// 指定退出事件方法proc.Exited += new EventHandler(proc_Exited);}}catch (ArgumentException ex){MessageBox.Show(ex.Message, this.Text,MessageBoxButtons.OK, MessageBoxIcon.Error);} }/// <summary> /// 啟動外部程序退出事件 /// </summary> void proc_Exited(object sender, EventArgs e) {MessageBox.Show(String.Format("外部程序 {0} 已經退出!", this.appName), this.Text,MessageBoxButtons.OK, MessageBoxIcon.Information); }
?
轉載于:https://www.cnblogs.com/DoNetCShap/archive/2012/06/26/2564488.html
總結
以上是生活随笔為你收集整理的C# 启动外部程序的几种方法的全部內容,希望文章能夠幫你解決所遇到的問題。