国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 學(xué)院 > 開(kāi)發(fā)設(shè)計(jì) > 正文

windows核心編程系列學(xué)習(xí)記錄1——錯(cuò)誤處理

2019-11-10 22:03:15
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

    寫(xiě)在前面:最近要在Windows下搞一些語(yǔ)言環(huán)境、字符集編碼的一些處理工作,決心好好研究一下Windows的工作原理,拾起擺在桌上最多翻一翻的Windows核心編程5。

    第一章 錯(cuò)誤處理    使用Windows函數(shù),最好關(guān)注一下他的各個(gè)返回值類(lèi)型,這樣有助于我們?cè)诤瘮?shù)調(diào)用失敗的時(shí)候更好的解決錯(cuò)誤。windows函數(shù)返回值常見(jiàn)的包括 VOID 、BOOL、HANDLE、PVOID、LONG/DWord。返回VOID說(shuō)明這個(gè)函數(shù)不可能失敗,BOOL返回0表示失敗,HANDLE通常返回NULL表示失敗,否則指向一個(gè)可操控的對(duì)象,當(dāng)然也有一些返回INVALID_HANDLE_VALUE=-1標(biāo)識(shí)失敗。PVOID返回NULL表示失敗,否則指向一個(gè)內(nèi)存地址,LONG/DWORD通常返回0/-1標(biāo)識(shí)失敗,具體情況參考SDK文檔。    使用GetError()返回由上一個(gè)函數(shù)調(diào)用設(shè)置的線程的32位錯(cuò)誤代碼,包括一個(gè)消息ID,消息文本,和消息編號(hào)。ID用于用GetLastError的返回值進(jìn)行比較。如果Windows函數(shù)調(diào)用失敗,應(yīng)該立即調(diào)用GetLastError來(lái)獲取上一次錯(cuò)誤代碼。    Windows提供原生的256個(gè)錯(cuò)誤代碼對(duì)應(yīng)256個(gè)錯(cuò)誤情況。一個(gè)錯(cuò)誤代碼對(duì)應(yīng)著一段文本描述,詳細(xì)的描述錯(cuò)誤原因。當(dāng)我們?cè)谧约旱某绦蛑袡z測(cè)到一個(gè)錯(cuò)誤,我們可能需要向用戶顯示錯(cuò)誤的文本描述,而不是一個(gè)干巴巴的錯(cuò)誤代碼,讓用戶自己去查畢竟不是個(gè)好主意。Windows提供一個(gè)函數(shù),F(xiàn)ormatMesssage可以返回傳入的錯(cuò)誤代碼對(duì)應(yīng)的字符串的首地址,可以將錯(cuò)誤代碼轉(zhuǎn)換為相應(yīng)的文本描述。

    還有一個(gè)函數(shù)SetLastError,接受一個(gè)錯(cuò)誤代碼,再調(diào)用GetLastError就會(huì)返回一個(gè)我們自己定義的錯(cuò)誤。這就是Windows為我們提供的一個(gè)定義自己錯(cuò)誤代碼的機(jī)制。

    第一章好像就這些知識(shí)點(diǎn)。


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 姜堰市| 辽阳市| 临洮县| 鞍山市| 亳州市| 高雄县| 叙永县| 彩票| 化隆| 阿城市| 鄢陵县| 大厂| 玉树县| 彝良县| 淅川县| 铅山县| 拉孜县| 深水埗区| 衡水市| 赞皇县| 军事| 门源| 潍坊市| 杭锦旗| 清水县| 微山县| 望都县| 万宁市| 健康| 苏州市| 大埔县| 弥勒县| 共和县| 正宁县| 响水县| 罗源县| 莱芜市| 玉龙| 商水县| 陆河县| 龙里县|