d197.bmp.txt

来自「Visual C++通信编程工程实例精解(附盘)」· 文本 代码 · 共 44 行

TXT
44
字号
    {
 nRet=-l;
     TRACE(_TEXT("GetlastError%d\n"),i);
           goto Exit;
    }
               // Check on overlapped operation.
               // Wait a liffle while for an event to occur.
           dwRes = WaitForSingleObject(m_overlappedEvent.hEvent, dwTimeOut);
switch(dwRes)
              {
                    // Event occurred.
             case WAIT_OBJECT_O:
                                                                                                  if (GetOverlappedResult(m_hFileHandle,&m_overlappedEvent,&dwOvRes,FALS E》
                             {
                                                    // Status event is stored in the event flag
                                              // specified in the original WaitCommEvent call.
                                                    // Deal with the status event as appropriate.
DoStateEvent(*pwdEvent);
   nRet=l;
                                 goto Exit;
                                 }
    else
                             {
                                                  'IRACE(_TEXT("An error occurred in the overlapped operation\nGetLastError is  %d\n "),
 GetLastError(》;
   nRet=-l;
                                goto Exit;
   break;
                                        case WAIT_ flMEOUT:
  nRet=-2;
                           goto Exit;
   break;
  default:
  nRet_-l;
                              goto Exit;
                   }
Exit:
retum nRet;
    萁中,pwdEvent和dwTimeOut分别表示收到某个串口的事件以及最长等待的时间。
    13)对串口事件进行处理。这个函数是该类最重要的函数,它用来处理来自串口的所有
的事件,然后根据事件的性质发送不同的消息给对应的处理函数,相当于一个调度中心,具
体代码如下:
/97

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?