• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            我的玻璃盒子

            GDI編程需要注意的地方

            寫GDI的時候,我們經常會由于粗心大意,忘記釋放GDI資源,導致GDI句柄泄露。再加上如果單元測試做的不好,就會在產品發布以后發生問題。

            眾所周知,Windows上對于一個進程允許的最大GDI句柄數量為9999,如果程序有大量的GDI句柄沒有被及時回收,那么程序就會表現的不正常。如果這種問題發生在以前的WINDOWS 98年代,甚至會造成系統崩潰。


            所以,這里我將陸續記錄一些GDI編程需要注意的地方,作為今后單元測試中的一部分來進行:

            1、Create()必須Delete(),包括CreateCompatibleDC

            2、SelectObject()必須是成對出現

            3、"H"打頭的一些GDI句柄,在使用完后要及時釋放。如::DeleteObject(HBITMAP),::DeleteDC(HDC)等

            4、記住一個原則:自己創建的東西要自己釋放,如GetDC 要 ReleaseDC

            5、MFC的GDI有很多問題,使用的時候要非常小心。建議最好直接用SDK寫。使用WTL中的GDI也是一個不錯的選擇。WTL中有些GDI對象在聲明的時候就可以決定是由析構函數來幫你釋放,還是由你自己釋放,非常方便。

            posted on 2008-02-03 11:05 深藍色系統 閱讀(1310) 評論(0)  編輯 收藏 引用 所屬分類: Skills

            導航

            <2009年7月>
            2829301234
            567891011
            12131415161718
            19202122232425
            2627282930311
            2345678

            統計

            常用鏈接

            留言簿(75)

            隨筆分類

            隨筆檔案

            文章分類

            文章檔案

            搜索

            最新評論

            閱讀排行榜

            評論排行榜

            精品综合久久久久久97超人| 久久精品中文字幕大胸| 久久99精品久久久久婷婷| 国产香蕉97碰碰久久人人| 欧美精品国产综合久久| 精品欧美一区二区三区久久久| 久久久久亚洲AV成人网人人网站| 久久亚洲春色中文字幕久久久| 久久露脸国产精品| 亚洲精品无码专区久久同性男| 久久久久久久综合日本亚洲 | 久久99国产乱子伦精品免费| 三级片免费观看久久| 久久久久久亚洲精品不卡| 看全色黄大色大片免费久久久| 一本大道加勒比久久综合| 99热都是精品久久久久久| 久久精品一区二区| 久久亚洲天堂| 精品国产一区二区三区久久| 亚洲AV无码1区2区久久| 97超级碰碰碰久久久久| 国产精品女同一区二区久久| 久久国产成人午夜aⅴ影院| 久久久久亚洲AV无码专区网站| 久久亚洲精品国产精品婷婷| 日本强好片久久久久久AAA| 久久精品亚洲乱码伦伦中文| 成人国内精品久久久久影院| 久久久这里有精品| 国产成人久久精品二区三区| 国产成人久久精品一区二区三区| 久久久青草久久久青草| 久久精品aⅴ无码中文字字幕不卡| 狠狠色丁香婷婷综合久久来| 久久99这里只有精品国产| 亚洲国产精品久久久久婷婷软件| 91精品国产91久久久久福利| 久久九九久精品国产| 久久久久久国产精品美女| 97热久久免费频精品99|