CString 异常 崩溃 弹错
有一个CString A,是与界面上的一个combo box 控件绑定的(暂时命名它为CA)
有另一个combo box控件,给它加selchange事件,就是在下拉列表切换的时候,需要对CString A做一些事。
但是,在这里,无论调用A的任何方法,都会崩溃。崩溃弹出
SynBak.exe 中的 0x7866f63c (mfc100ud.dll) 处有未经处理的异常: 0xC0000005: 读取位置 0x4efd5a93 时发生访问冲突
中断位置,在CString的文件里是
CStringData* GetData() const throw()
{
return( reinterpret_cast< CStringData* >( m_pszData )-1 );
}
在return那里中断了。
我的代码的位置是
void CSynBakDlg::OnCbnSelchangeOrigin()
{
// TODO: 在此添加控件通知处理程序代码
TCHAR c;
if (cmbOrigin.GetLBText(cmbOrigin.GetCurSel(), &c) > 0)
{
//这里,不管调用strGbg的任何方法,都崩溃
//尝试过strGgb.unlockbuffer,看是不是系统把buffer给锁了,但不行,仍然崩溃。
}
}