Windows 已在 XXXX.exe 中触发一个断点。 其原因可能是堆被损坏,这说明 XXXX.exe 中或它所加载的任何 DLL 中有 Bug

fangtianyifangtianyi 2014-10-16 11:11:08
INT CComManager::EnumSerialPortFromDevice(LPCTSTR pStrSpecificPort,std::vector<CString>& vSerialPort)
{
std::vector<LPCTSTR> vData;
vSerialPort.clear();

INT nCount = m_pCommunication->EnumSpecificSerialPortFromDevice( pStrSpecificPort, vData );//此函数是在dll中调用的

for( int i = 0; i < nCount; i++ )
{
vSerialPort.push_back( vData[i] );
}

return nCount;
}

//dll中EnumSpecificSerialPortFromDevice函数的实现如下
INT CCommunication::EnumSpecificSerialPortFromDevice( LPCTSTR pStrSpecificPort, std::vector<LPCTSTR>& vSerialPort )
{
int nSpecificPortNumber = 0;

m_vSerailPort.clear();
int nAllPortNumber = EnumSerialPortFromDevice( m_vSerailPort );

CString strTmp = pStrSpecificPort;

for( int i = 0; i < nAllPortNumber; i++ )
{
if( m_vSerailPort[i].Find( strTmp ) >= 0 /*|| m_vSerailPort[i].Find( L"Prolific" ) >= 0 || m_vSerailPort[i].Find( L"CP210x" ) >= 0*/ )
{
vSerialPort.push_back( m_vSerailPort[i].GetString() );
nSpecificPortNumber ++;
}
}

return nSpecificPortNumber;

}


调用完EnumSerialPortFromDevice函数在return nCount的时候就报了标题所示的错误,经过调试跟进,发现应该是调用那个dll函数导致的问题,但是具体不知道哪块写的有问题;而且,将主程序改成在共享dll中使用mfc就没有这个错误。
期待各位的帮助;
...全文
376 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
jianghandaxue 2014-10-21
  • 打赏
  • 举报
回复
崩溃的时候在弹出的对话框按相应按钮进入调试,按Alt+7键查看Call Stack里面从上到下列出的对应从里层到外层的函数调用历史。双击某一行可将光标定位到此次调用的源代码或汇编指令处
shen_wei 2014-10-17
  • 打赏
  • 举报
回复
引用 3 楼 zhao4zhong1 的回复:
崩溃的时候在弹出的对话框按相应按钮进入调试,按Alt+7键查看Call Stack里面从上到下列出的对应从里层到外层的函数调用历史。双击某一行可将光标定位到此次调用的源代码或汇编指令处。
用这种方式查看。。
赵4老师 2014-10-16
  • 打赏
  • 举报
回复
崩溃的时候在弹出的对话框按相应按钮进入调试,按Alt+7键查看Call Stack里面从上到下列出的对应从里层到外层的函数调用历史。双击某一行可将光标定位到此次调用的源代码或汇编指令处。
Saleayas 2014-10-16
  • 打赏
  • 举报
回复
在不同的模块 使用 new.delete 的原因。
  • 打赏
  • 举报
回复
没人回吗,一直没能解决,应该是指针问题,但是不知道具体哪里写错了,调dll中的一个函数,不能引用还是怎么回事。

16,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧