Windows Mobile 5.0 下的GWES.EXE錯誤

來源:互聯網
上載者:User

     在Windows Mobile 5.0的裝置上進行開發,最怕見到這個所謂的GWES.EXE Error。因為程式出現該錯誤,程式幾乎不能正常運行,而且對於開發人員來說,系統給出的錯誤報表,沒有幾個會看懂的,即不知道程式中的哪個地方出現了問題;而且一旦出現這個錯誤,即使隨後的程式仍能運行,也會經常跳出那個錯誤報表,一個字煩。而在Windows Mobile 5.0以前的系統上,很少會看到這個錯誤資訊。
 (BTW在開發基於Windows Mobile 5.0的應用程式的時候,應先檢查下,裝置上的"錯誤報表"是否關閉,如果關閉了,就不會跳出以上的錯誤報表資訊,但是一旦開啟,程式啟動並執行時候就會出現問題,比如彈出那個錯誤資訊。檢查的方法:(PPC)開始——〉設定——〉系統——〉錯誤報表——〉啟動錯誤報表)
    下面是我在開發的過程中,會出現GWES.EXE Error的幾個方面,來個拋磚引玉:
     1、一個字串的記憶體空間不是通過mallo/new分配的,如可能是複製另一個字串的,但是在程式中的某個地方,卻用free/delete將其回收。
     2、如果是動態申請的空間,如果沒有回收,在做Hopper Test的會出現問題;建立的資源如字型、畫刷等,沒有刪除,會產生記憶體的泄漏,長時間運行程式,也會產生GWES.EXE Error。
    3、CFont  BoldFont;
          BoldFont.CreateFont(0, 0, 0, 0,FW_SEMIBOLD,
   false, false, false, DEFAULT_CHARSET,
   OUT_DEFAULT_PRECIS, CLIP_CHARACTER_PRECIS,
   DEFAULT_QUALITY, DEFAULT_PITCH|FF_DONTCARE,
   _T("黑體"));
       CFont *pOldFont;
       pOldFont = pDC->SelectObject(&BoldFont);
       // do Something
      pDC->SelectObject(pOldFont);
      BoldFont.DeleteObject();
     // 之後沒有再對預設的字型進行修改
      pDC->SelectObject(pOldFont); //
      就是因為重複了這個,一運行程式,馬上出現GWES.EXE Error。
   
……(待補充)
     目前,想到就這些,歡迎補充!

     可見,這種錯誤都是粗心造成的,只要認真審查下代碼,就會避免出現這種錯誤。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.