请大家帮我看看请各抒己见!

解决方案 »

  1.   

    SORRY。。是这样的这是一个串口通信的例子在程序启动完成后,刚刚收到数据就发生内存报错这个是栈里定位到的信息
      

  2.   

    第三个图, return 0 的代码的函数,整个发一下,研究研究.
      

  3.   

    给一个返回时报错的典型例子,楼主看是不是错写了内存的原因.int Func(int a)
    {
    *(&a-1) = 0; //a参数底下跟的是返回的指令地址,改写了,在return处会报错
    return 1;
    }int main(int argc, char* argv[])
    {
    Func(0x12345678);
      

  4.   

    m_hDataMutex用之前判断一下。
    还有串口缓冲区设置大一点
      

  5.   

    m_hDataMutex的定义是什么?HANDEL m_hDataMutex;吗?最好跟踪一下它。觉得它有问题
      

  6.   

    第一张图pData 是一个 new 出来的地址,这个地址加上一个值之后,这个 pData 指向的地方,已经很危险了,不能乱写.只有 pData 是有效地址 pData+1 处,误写了,都可能会出问题.
      

  7.   

    pDate = new Byte 然后又指针赋值,没有看到释放的代码。
    只能说问题多多,不想看了