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?/?客戶定義的代碼

          posted on 2009-05-08 11:44 -274°C 閱讀(384) 評論(0)  編輯  收藏 所屬分類: C++

          常用鏈接

          留言簿(21)

          隨筆分類(265)

          隨筆檔案(242)

          相冊

          JAVA網站

          關注的Blog

          搜索

          •  

          積分與排名

          • 積分 - 914107
          • 排名 - 40

          最新評論

          主站蜘蛛池模板: 鄂托克旗| 仙游县| 巴中市| 高碑店市| 嫩江县| 抚宁县| 上犹县| 江源县| 马山县| 阿克陶县| 文水县| 普兰店市| 嘉禾县| 巴青县| 嘉黎县| 会宁县| 文水县| 河间市| 酉阳| 女性| 福贡县| 株洲市| 沙洋县| 宝山区| 侯马市| 大竹县| 天门市| 和顺县| 津南区| 炉霍县| 额尔古纳市| 绥芬河市| 达尔| 固镇县| 凉山| 林口县| 平塘县| 视频| 定远县| 龙门县| 会宁县|