C# 開啟指定路徑下文件

黄舟
發布: 2017-02-21 10:50:19
原創
2753 人瀏覽過

C#  打開指定路徑下文件

 /// <summary>
        /// 打开指定路径下文件,比如:Word、Excel、Dll、图片等都可以(前提是你已经安装打开程序的对应软件)
        /// </summary>
        /// <param name="NewFileName">eg:D:\Test\模版8.doc</param>
        /// <param name="NewFileName">eg:D:\Test\模版8.doc</param>
        private void OpenFile(string NewFileName)
        {
            Process process = new Process();
            ProcessStartInfo processStartInfo = new ProcessStartInfo(NewFileName);
            process.StartInfo = processStartInfo;
			# region 下面这段被注释掉代码(可以用来全屏打开代码)
			////建立新的系统进程    
            //System.Diagnostics.Process process = new System.Diagnostics.Process();
            ////设置文件名,此处为图片的真实路径+文件名(需要有后缀)    
            //process.StartInfo.FileName = NewFileName;
            ////此为关键部分。设置进程运行参数,此时为最大化窗口显示图片。    
            //process.StartInfo.Arguments = "rundll32.exe C://WINDOWS//system32//shimgvw.dll,ImageView_Fullscreen";
            //// 此项为是否使用Shell执行程序,因系统默认为true,此项也可不设,但若设置必须为true    
            //process.StartInfo.UseShellExecute = true;
			#endregion
            try
            {
                process.Start();
                try
                {
                    // process.WaitForExit();
                }
                catch (Exception ex)
                {
                    throw ex;
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                try
                {
                    if (process != null)
                    {
                        process.Close();
                        process = null;
                    }
                }
                catch { }
            }
        }
登入後複製

今天,測試的時候,不知道誰在

process.StartInfo = processStartInfo;
登入後複製

這個句話的後面,添加了這麼一句話:

process.StartInfo.UseShellExecute = false;
登入後複製

一開始也沒注意,然後一直報下面這個錯誤:

The specified executable is not a validapplication for this OS platform.
登入後複製

解釋:

        ProcessStartInfo.UseShellExecute 屬性:取得或設定一個值,該值指示是否使用操作系統外殼程式啟動進程。

屬性值:
        若要在啟動程序時使用外殼程序,則為 true;否則,直接從執行檔建立程序。預設為 true。將屬性設為 false 能夠重定向輸入流、輸出流和錯誤流。否則不行。
        使用作業系統外殼程式啟動進程時,可以使用Process 元件啟動任何文件(可以是與執行檔關聯的、具有預設開啟作業的任何註冊檔案類型),並對檔案執行操作(如列印) 。如果 UseShellExecute 為 false,則只能使用 Process元件啟動可執行檔。

以上就是C#  打開指定路徑下文件的內容,更多相關內容請關注PHP中文網(www.php.cn)!




相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!