我的串口程序 BuildCommDCB("COM1:115200,n,8,1",&dcb);使用了这一句以后,出现
以下问题
             Unhandled exception in callsu.exe (KERNEL32.DLL): 0xC0000005:Access Violation
在2k 和xp下调试均没有次错误,但是在98和me下有。 hCommDev=CreateFile("COM1",GENERIC_READ|GENERIC_WRITE,0,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL|FILE_FLAG_OVERLAPPED,NULL);
if(hCommDev!=(HANDLE)-1)
                         { flagcom=TRUE;                           dcb.BaudRate=9600;
   dcb.ByteSize=8;
   dcb.Parity=NOPARITY;
   dcb.StopBits=ONESTOPBIT;

                     //  BuildCommDCB("COM1:115200,n,8,1",&dcb);
                           SetCommState(hCommDev,&dcb);   //以上为初始化串口
     
                           COMMTIMEOUTS CommTimeOuts;
                           CommTimeOuts.ReadIntervalTimeout=MAXDWORD;
                           CommTimeOuts.ReadTotalTimeoutMultiplier=0;
                           CommTimeOuts.ReadTotalTimeoutConstant=0;
                           CommTimeOuts.WriteTotalTimeoutMultiplier=0;
                           CommTimeOuts.WriteTotalTimeoutConstant=1000;
                           SetCommTimeouts(hCommDev,&CommTimeOuts);
                           PurgeComm(hCommDev,PURGE_TXCLEAR);
                           PurgeComm(hCommDev,PURGE_RXCLEAR); //设置读写串口超时时间
                       
                         bReturn=WriteFile(hCommDev,strOutMsg,strlen(strOutMsg),&dwBytesWritten,NULL);
                         if(!bReturn)flagmodem=FALSE;
                 else flagmodem=TRUE;
                          }          else flagcom=FALSE;