本人正在做一個專案,是從別人那里接手過來的,接手的時候dialog上有一個多余的滑動塊,我本想把他隱藏,但是隱藏之后運行還是能看見它,因此我就一氣之下把它delete了,這下出了麻煩,運行的時候,顯示debug assertion failed錯誤,我點了重試之后,中斷到了dlgdata.cpp中的一行,具體代碼如下:
HWND CDataExchange::PrepareCtrl(int nIDC)
{
ASSERT(nIDC != 0);
ASSERT(nIDC != -1); // not allowed
HWND hWndCtrl;
COleControlSite* pSite = NULL;
m_pDlgWnd->GetDlgItem(nIDC, &hWndCtrl);
if (hWndCtrl == NULL)
{
// Could be a windowless OCX
pSite = m_pDlgWnd->GetOleControlSite(nIDC);
if (pSite == NULL)
{
TRACE(traceAppMsg, 0, "Error: no data exchange control with ID 0x%04X.\n", nIDC);
ASSERT(FALSE);
AfxThrowNotSupportedException();
}
}
m_idLastControl = nIDC;
m_bEditLastControl = FALSE; // not an edit item by default
return hWndCtrl;
}
中斷到了ASSERT(FALSE);這一行了。
以前我也遇到過debug這種錯誤,但是都是因為野指標問題,這次真的不知道怎么修改了,求大神們幫忙!
uj5u.com熱心網友回復:
希望大神們不吝賜教,我真的很急,專案主要內容都做完了,不想因為這個界面問題延遲進度uj5u.com熱心網友回復:
問題已經加到了100分,希望有大神能解決我的問題!uj5u.com熱心網友回復:
看呼叫堆疊, 應該是 DoDataExchange 中 DDX_Control 關聯控制元件出錯了, 屏蔽掉uj5u.com熱心網友回復:
不是哦。。。我dodataexchange中ddx_control里沒有那個滑動塊的id額。。
uj5u.com熱心網友回復:
IDC_LOAD_ACQ_CONFIG,這是我洗掉的那個滑動塊的id。而dodataexchange中:
void CGigeCameraDemoDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CGigeCameraDemoDlg)
DDX_Control(pDX, IDC_STATUS, m_statusWnd);
DDX_Control(pDX, IDC_VERT_SCROLLBAR, m_verticalScr);
DDX_Control(pDX, IDC_HORZ_SCROLLBAR, m_horizontalScr);
DDX_Control(pDX, IDC_VIEW_WND, m_viewWnd);
DDX_Text(pDX, IDC_FIXTHD, single_height);
DDX_Text(pDX, IDC_RGAREA, m_rgarea);
//DDX_Text(pDX, IDC_FIXTHD2, m_fixthd2);
//DDX_Text(pDX, IDC_RGAREA2, m_rgarea2);
// DDX_Control(pDX, IDC_MSCOMM1, m_ctrlComm);
DDX_Control(pDX, IDC_GRAB, m_ButtenGrab);
DDX_Control(pDX, IDC_FREEZE, m_ButtenFreeze);
DDX_Control(pDX, IDC_SHOWPICTURE, m_picture);
DDX_Control(pDX, IDC_logopicture, hbmp);
DDX_Control(pDX,IDC_STATIC_RESULT,m_result);
}
沒有這個id額
uj5u.com熱心網友回復:
看這里一樓的回復uj5u.com熱心網友回復:
說實話,感覺一樓說的好像不是我這個問題額。或許是我太笨了,理解不了
uj5u.com熱心網友回復:
1、resource.h里面刪掉滑塊的ID2、Dialog對應的CPP和H檔案中刪掉滑塊的ID(應該在訊息那塊)
uj5u.com熱心網友回復:
你先找到那個滑塊ID相關的代碼,看看那些代碼都做了什么操作不就清楚了~uj5u.com熱心網友回復:
搜索“IDC_LOAD_ACQ_CONFIG”全部洗掉
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/126414.html
標籤:基礎類
上一篇:mfc程式運行時錯誤
