Red de conocimiento informático - Problemas con los teléfonos móviles - Cómo guardar los datos recibidos desde el puerto serie en un archivo en la comunicación del puerto serie VC++

Cómo guardar los datos recibidos desde el puerto serie en un archivo en la comunicación del puerto serie VC++

Realice las siguientes operaciones en el evento OnComm:

long CSCRDlg::OnCommunicate(WPARAM ch, LPARAM port)

{

if(port==1) //COM1 recibió datos

{

RXData[chnum] = ch;//RXData[] variable de carácter global

chnum++;

if(chnum==41) //Guardar y procesar después de recibir n caracteres

{

Archivo CFile;

CFileException e; p>int error=0;

if(!file.Open(ruta predeterminada,CFile::modeCreate|CFile::typeBinary|CFile::modeWrite,&e))

If ( !p>

MessageBox("Error al guardar el archivo, no se pudieron guardar los datos", "BJ2948A",MB_ICONERROR

else

{

);

TRY

{

file.Write(&RXData,sizeof (N));

}

CATCH(CFileException, e)

{

if(e->m_cause!=CFileException::none)

{

error=1; /p>

MessageBox("Error al guardar el archivo", "Advertencia BJ2948A",MB_ICONERROR

}

}

}

);

}

END_CATCH

if(error==0)

MessageBox("¡El archivo se guardó!", "Mensaje BJ2948A",MB_ICONINFORMATION)

}

archivo.Close()

}

}

}

}

}

Le sugiero que lea el libro "Serial Port" editado por Gong Jianwei. ¡Escribió el asistente de depuración del puerto serie! muy lindo.

Además, el código base en vckbase también tiene muchos ejemplos de puertos serie, ¡te recomiendo que eches un vistazo!