在看代碼的時候,遇到這個函數,原型是這樣的:ExitProcess(STATUS_FAILED);但是編譯的時候,會現STATUS_FAILED未定義的錯誤。這個參數代表什么意思呢?幫助文檔上說這個函數的參數是指向退出代碼,后來上網上查到個資料是:“退出代碼是給你的父進程或調試你的進程的進程用的,對你的進程來說,用退出代碼可以告訴你的父進程或調試進程你的運行結果,是正常不是不正常、出現了什么錯誤,等等的信息”這個說法對嗎?知道的告訴下!謝謝了
2 回答

白豬掌柜的
TA貢獻1893條經驗 獲得超10個贊
我不知道你在哪兒找的原型,我在MSDN2005里的原型是:VOID ExitProcess(
UINT uExitCode
);uExitCode即退出代碼,是個UINT 類型,這個代碼一般沒有用途,我們一般可以填入0。對于父進程(不一定是父進程,擁有該進程句柄都算)可以通過GetExitCodeThread獲取進程的退出代碼。這個代碼用來告訴父進程程序退出原因,填入什么沒有特別規定,可以自己約定,一般來說填入0表示正常退出,其他表示非正常退出。

互換的青春
TA貢獻1797條經驗 獲得超6個贊
退出代碼是給你的父進程或調試你的進程的進程用的,對你的進程來說,用退出代碼可以告訴你的父進程或調試進程你的運行結果,是正常不是不正常、出現了什么錯誤,等等的信息。
一般不太可能出現內存讀寫錯誤吧,你可以把具體的代碼和出錯信息貼出來看看。
ExitProcess()就是你這樣使用的,exit和ExitProcess不同的是,exit是C/C++的庫函數,它并也是間接地調用了ExitProcess,不過在此之間進行善后工作,如在C++中,會析構所有的全局類對象等等。
你調試運行一下,問題不一定是由ExitProcess()引起的
- 2 回答
- 0 關注
- 428 瀏覽
添加回答
舉報
0/150
提交
取消