C#使用Process類調(diào)用外部exe程序
在編寫程序時(shí)經(jīng)常會(huì)使用到調(diào)用可執(zhí)行程序的情況,本文將簡(jiǎn)單介紹C#調(diào)用exe的方法。在C#中,通過(guò)Process類來(lái)進(jìn)行進(jìn)程操作。 Process類在System.Diagnostics包中。
示例一
Process p = Process.Start("notepad.exe");
p.WaitForExit();//關(guān)鍵,等待外部程序退出后才能往下執(zhí)行
通過(guò)上述代碼可以調(diào)用記事本程序,注意如果不是調(diào)用系統(tǒng)程序,則需要輸入全路徑。
示例二
當(dāng)需要調(diào)用cmd程序時(shí),使用上述調(diào)用方法會(huì)彈出令人討厭的黑窗。如果要消除,則需要進(jìn)行更詳細(xì)的設(shè)置。
Process類的StartInfo屬性包含了一些進(jìn)程啟動(dòng)信息,其中比較重要的幾個(gè)
FileName 可執(zhí)行程序文件名
Arguments 程序參數(shù),已字符串形式輸入
CreateNoWindow 是否不需要?jiǎng)?chuàng)建窗口
UseShellExecute 是否需要系統(tǒng)shell調(diào)用程序
通過(guò)上述幾個(gè)參數(shù)可以讓討厭的黑屏消失
exep.StartInfo.FileName = binStr;
exep.StartInfo.Arguments = cmdStr;
exep.StartInfo.CreateNoWindow = true;
exep.StartInfo.UseShellExecute = false;
exep.Start();
exep.WaitForExit();//關(guān)鍵,等待外部程序退出后才能往下執(zhí)行
或者
System.Diagnostics.ProcessStartInfo startInfo = new System.Diagnostics.ProcessStartInfo();
startInfo.FileName = binStr;
startInfo.Arguments = cmdStr;
startInfo.CreateNoWindow = true;
startInfo.UseShellExecute = false;
exep.Start(startInfo);
exep.WaitForExit();//關(guān)鍵,等待外部程序退出后才能往下執(zhí)行
相關(guān)文章
C#中csv文件與DataTable互相導(dǎo)入處理實(shí)例解析
這篇文章主要介紹了C#中csv文件與DataTable互相導(dǎo)入處理實(shí)例解析,非常實(shí)用的功能,需要的朋友可以參考下2014-08-08
C#利用WMI操作DNS服務(wù)器(可遠(yuǎn)程操作,需要相應(yīng)權(quán)限)
C#利用WMI操作DNS服務(wù)器(可遠(yuǎn)程操作,需要相應(yīng)權(quán)限)...2007-03-03
深入DropDownList用法的一些學(xué)習(xí)總結(jié)分析
本篇文章是對(duì)DropDownList的用法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06
Unity Shader實(shí)現(xiàn)線框效果的制作步驟
最近比較忙,今天抽空給大家分享一篇文章,關(guān)于Unity Shader實(shí)現(xiàn)線框效果,本文給大家分享詳細(xì)制作步驟,通過(guò)圖文實(shí)例相結(jié)合給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2021-06-06
C#實(shí)現(xiàn)的ACCESS數(shù)據(jù)庫(kù)操作類完整實(shí)例
這篇文章主要介紹了C#實(shí)現(xiàn)的ACCESS數(shù)據(jù)庫(kù)操作類,結(jié)合完整實(shí)例形式分析了C#針對(duì)access數(shù)據(jù)庫(kù)增刪改查、事務(wù)、結(jié)果處理等相關(guān)操作技巧,需要的朋友可以參考下2017-05-05

