錯誤日誌 1 MFC,繼承CDialog 崩潰

2021-07-01 21:31:00 字數 579 閱讀 9400

今天,在寫3d地圖編輯器的時候。

單擊修改屬性選單項的時候,崩潰了。

彈出這詭異的視窗。

首先,由於明確了出錯的地方,直接在對應的事件處理函式打斷點,進行單步除錯。

void cdmapeditorview::onmodifyskmeshattrib()

發現錯誤出在linkdata這句上,進入函式內部,發現了奇怪的現象。

m_meshposmovepowerbar是乙個滑動條的控制項變數,由窗體編輯器幫忙建立的,但是,在這裡它的hwnd竟然是null,太詭異了這。

之後檢查窗體編輯器,控制項變數是確實的建立出來了。 

好吧,很詭異。突然想起來,之前這個對話方塊建立成了html對話方塊。可能是,這部分出了問題。沒有完全的改為普通的對話方塊。

繼續檢查**,這部分沒有問題,所有的chtmldialog都改為了,cdialog。

此時陷入迷茫。。。。。。

然後無意中發現,oninitdialog()裡面沒呼叫cdialog的oninitdialog ......好吧。

原來如此,於是直接刪掉oninitdialog,bug解決。

MFC學習筆記1 MFC應用程式架構

最近開始了新的專案,要求在現有專案基礎上進行二次開發以及改進。現有專案使用vc 6.0,mfc開發。mfc的本質就是乙個包含許多微軟已經定義好的物件的類庫,雖然不同的程式功能上千差萬別,但本質上來講都可以劃分為 1.使用者介面設計 2.檔案操作 3.多 4.資料庫 等方面,這也是mfc存在的價值。如...

VC教程筆記1 MFC基本框架原理

問 為什麼在有一些goto definition時會進行編譯呢?回答1 這個時候編譯是編譯器要知道這個定義在哪,才可以跳轉。回答2 和這個東東的實現方式有關,個人分析就是用到了編譯中的一些資訊 當某些 改變了以後,為了保證準確性,系統就自己編譯了一下,估計是這樣的。mfc中,cmainframe與c...

mfc編譯常規錯誤

問題1 c program files x86 microsoft visual studio 10.0 vc atlmfc include atlcore.h 35 fatal error c1189 error this file requires win32 winnt to be defin...