windows?核心編程第五版
第一章?錯誤處理
1.調用系統API時候仔細查看MSDN返回值含義。
2.函數調用失敗后,可以立即調用?GetLastError來查看錯誤碼。
3.可以利用Visual?Studio?自帶工具?Error?Lookup?來查看錯誤碼對應的含義。
4.在調試的時候在Watch?窗口中選擇一行,然后輸入$err,hr。對于錯誤碼和錯誤信息都能更有效的查看。
5.定義自己的錯誤碼:有時候我們會寫函數提供給別人調用,這樣就需要向別人指出錯誤。為了指出錯誤,只需要設置線程上的一個錯誤代碼,然后另自己的函數返回FALSE,INVALID_HANDLE_VALUE,NULL?或者其它合適的值。為了設置線程的上一個錯誤代碼,只需要調用
:
VOID?setLastError(DWORD?dwErrcode);
盡量使用WinError.h?中現有的代碼來表示錯誤碼。如果都不能很好的反應自己想要表達的錯誤信息,就可以自己創建錯誤碼,錯誤代碼是一個32位數。唯一需要注意的是29位為1(表示用戶自定義錯誤)
位
|
31-30
|
29
|
28
|
27-16
|
15-0
|
內容
|
嚴重性
|
Microsoft?/?soft
|
保留
|
Facility代碼
|
異常代碼
|
含義
|
0?=?成功
1?=?信息
2?=?警告
3?=?錯誤
|
?0?=?微軟定義的代碼
1?=?用戶定義的代碼
|
必須為0
|
前256個值由Microsoft保留
|
Microsoft?/?客戶定義的代碼
|