我需要寫一個程序,讓這個程序知道另一個程序是否正常退出,于是就需要獲取這個進程的退出代碼
我們提供的服務(wù)有:成都網(wǎng)站建設(shè)、網(wǎng)站設(shè)計、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、昌江ssl等。為千余家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的昌江網(wǎng)站制作公司
在程序如果需要手動退出,可以設(shè)置當(dāng)前的退出代碼
static void Main(string[] args)
{
Environment.Exit(-100);
}
這時的程序運行就退出,同時退出的代碼就是 -100 這和 C 語言的在 main 函數(shù)返回值一樣
在 C# 如果想要實現(xiàn) C 語言的 main 函數(shù)的返回值,是通過調(diào)用 Environment.Exit 方法
那么其他程序如何拿到這個程序的退出代碼?
需要其他程序先拿到這個程序的進程,如果是在其他程序啟動這個程序,那么通過 Process 就可以拿到
如我有兩個程序,一個是控制臺程序,這個控制臺程序是 控制臺.exe 還有一個 WPF 程序,通過 WPF 程序打開控制臺程序,然后拿到控制臺程序的退出代碼
private Process _process;
public MainWindow()
{
InitializeComponent();
var process = new Process {StartInfo = new ProcessStartInfo("控制臺.exe")};
_process = process;
process.Start();
}
在 WPF 程序的按鈕按下嘗試通過 _process.ExitCode 請看代碼

通過這個方法就可以拿到啟動的進程的返回值,如果不是在 WPF 啟動控制臺程序,也可以在進程退出之前使用下面代碼拿到進程
var process = Process.GetProcessById(控制臺進程);
如果在進程退出之后才嘗試去獲取進程就會出現(xiàn)下面代碼
System.ArgumentException:“ID 為 xx 的進程當(dāng)前未運行。"
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持創(chuàng)新互聯(lián)。
名稱欄目:C#獲取進程退出代碼的實現(xiàn)示例
文章地址:http://chinadenli.net/article32/goicsc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站收錄、小程序開發(fā)、電子商務(wù)、全網(wǎng)營銷推廣、關(guān)鍵詞優(yōu)化、品牌網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)