我试图通过串行端口连接读取信息。我正在尝试使用超级终端向我的程序发送一个字符或字符串。代码构建良好,并且会调试,直到它到达我正在使用的 ReadFile 函数。一旦启动该功能,它就会等待发送信息。一旦我输入 4 个字符,我就会收到我在标题中声明的未处理异常。断点将我留在 AfxWinMain 以及 hPrevInstance CXX0030 表达式无法评估。我可以使用我的程序将数据发送到超级终端,但无论出于何种原因,它都会与 readfile 一起崩溃。
在哪里调用函数
void CThermotronDlg::OnBnClickedDelete()
{
Serial Port;
CString Temp("34");
bool ans;
int nItem = MyListEx.GetSelectionMark();
ans = Port.ReadPort(Temp);
}
功能
bool Serial::ReadPort(CString buf){
OpenPort();
LPCTSTR dope;
LPDWORD bytesRead =0;
char b[4];
BOOL ret = ReadFile(sSerial,b,4,bytesRead,NULL) ;
dope = reinterpret_cast<LPCTSTR>(b);
AfxMessageBox(dope,0,0);
return true;
}