为什么会出现这情况

解决方案 »

  1.   

    看不到图
    上传至CSDN的空间再链过来
      

  2.   

    点“重试”,进去debug看看。
      

  3.   

    在VC的程序目录里找文件afxcoll.inl
    贴出第27行代码
      

  4.   

    回复15楼 :是在timer消息函数里就走不下去了
      

  5.   

    switch(nIDEvent)
    {
    case 1:
    {
    BYTE KI[3]={0x01,0x20,0xFA};
    SendData(KI);
    break;
    }
    case 2:
    {
    for(int i=0;i<512;i++)
    {
    if(indexn[i]==0)
    break;
    }
    if(i==0)
    break;
    for(int j;j<i;j++)
    {
    if(indexn[j]==0xFA&&indexn[j+1]!=0x10)
    break;
    }
    CByteArray array;
    array.RemoveAll();
    int ko[2];
    for(int k=0;k<=i;k++)
    {
    if(k==i-2)
    ko[0]=indexn[k];
    else if (k==i-1)
    ko[1]=indexn[k];
    else if(k<i-2)
    array.SetAt(k,indexn[k]);
    else 
    array.SetSize(k-2,indexn[k]);
    }
    long crc=check(array);
    if(crc%256!=ko[0]||crc/256!=ko[1])
    {
    BYTE kp[3]={0x01,0x50,0xFA};
    SendData(kp);
    break;
    }
    switch(array[1])
    {
    case '0x10':
    {
    if(array[3]&0x80==0)
    m_spzk=1;
    else m_spzk=0;
    if(array[3]&0x40==0)
    m_ydms=0;
    else m_ydms=1;
    if(array[3]&0x20==0)
    m_ydfs=0;
    else m_ydfs=1;
    if(array[3]&0x10==0)
    m_ydfx=0;
    else m_ydfx=1;
    if(array[3]&0x08==0)
    m_ydzt=0;
    else m_ydzt=1;
    break;
    }
    default: break;
    }
    }
    default:break;
    }
    // TODO: Add your message handler code here and/or call default

    CDialog::OnTimer(nIDEvent);
    }
      

  6.   

    总是在  for(int i=0;i<512;i++)
    {
    if(indexn[i]==0)
    break;
    }
    这里卡住
      

  7.   

    我定义的是CByteArray 型  ,我现在改了下程序,我弄的发送的定时器 可以工作,但我定义的接收数据的定时器 只要接收到数据就终止掉了 ,不解啊