摘要:[C#] 使用系統預設的應用程式來開啟對應的檔案資源
Introduction
有時候我們需要使用預設的應用程式來開啟檔案(.txt)或是網路資源(ftp),
這邊參考 MSDN 做個練習。
Example
sample1
//使用系統預設的瀏覽器開啟網頁 private void btnWebBrowser_Click(object sender, EventArgs e) { //欲開啟的網址 string target = @"http://www.google.com.tw/"; //當系統未安裝預設的程式來開啟相對應的資源的話,會出現例外錯誤 try { System.Diagnostics.Process.Start(target); } catch (System.ComponentModel.Win32Exception ex) { MessageBox.Show(ex.Message); } }
sample2
//指定使用 IE 開啟網頁 private void btnOpenWebBrowser_Click(object sender, EventArgs e) { string target = @"http://www.google.com.tw/"; //方法 1. //System.Diagnostics.Process.Start("IExplore.exe", target); //方法 2. System.Diagnostics.ProcessStartInfo pInfo = new System.Diagnostics.ProcessStartInfo(); pInfo.FileName = "IExplore.exe"; pInfo.Arguments = target; try { System.Diagnostics.Process.Start(pInfo); } catch (System.ComponentModel.Win32Exception ex) { MessageBox.Show(ex.Message); } }
sample3
//使用預設的應用程式開啟文件檔 private void btnDefaultTxt_Click(object sender, EventArgs e) { //設定文件檔路徑 string filename = Environment.CurrentDirectory + @"\Test.txt"; //建立 ProcessStartInfo 物件 System.Diagnostics.ProcessStartInfo pInfo = new System.Diagnostics.ProcessStartInfo(); pInfo.FileName = filename; //指定是否使用系統預設關聯的應用程式來啟動。 pInfo.UseShellExecute = true; System.Diagnostics.Process p = null; try { //開啟文件 p = System.Diagnostics.Process.Start(pInfo); } catch (System.ComponentModel.Win32Exception ex) { MessageBox.Show(ex.Message); } finally { p.Close(); p.Dispose(); } }
sample4
//使用預設應用程式開啟 Word private void btnDefaultWord_Click(object sender, EventArgs e) { //設定 Word 檔路徑 string filename = Environment.CurrentDirectory + @"\Test.doc"; using (System.Diagnostics.Process p = new System.Diagnostics.Process()) { p.StartInfo.FileName = filename; p.Start(); } }
Link
Process 類別 : 提供對本機和遠端處理序 (Process) 的存取,並讓您能夠啟動和停止本機系統處理序。
ProcessStartInfo 類別 : 指定啟動處理序時所使用之值的集合。
三小俠 小弟獻醜,歡迎指教