use*_*863 0 c++ com mfc dialog exception
我试图通过串口连接读取信息.我正在尝试使用HyperTerminal向我的程序发送一个字符或字符串.代码构建正常并将调试,直到它到达我正在使用的ReadFile函数.一旦启动该功能,它将等待发送信息.一旦我输入4个字符,我就会收到标题中所述的未处理的异常.断点使我无法评估afxWinMain和hPrevInstance CXX0030表达式.我能够使用我的程序将数据发送到超级终端,但无论出于何种原因,它都会与readfile崩溃.
调用函数的位置
void CThermotronDlg::OnBnClickedDelete()
{
Serial Port;
CString Temp("34");
bool ans;
int nItem = MyListEx.GetSelectionMark();
ans = Port.ReadPort(Temp);
}
Run Code Online (Sandbox Code Playgroud)
功能
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;
}
Run Code Online (Sandbox Code Playgroud)
DWORD bytesRead;
char b[4];
BOOL ret = ReadFile(sSerial,b,4,&bytesRead,NULL) ;
Run Code Online (Sandbox Code Playgroud)
第4个参数必须是有效指针,它接收读取的实际字节数.它不能为NULL.更确切地说:仅当lpOverlapped参数不为NULL时,此参数才可以为NULL.
| 归档时间: |
|
| 查看次数: |
1403 次 |
| 最近记录: |