VC 串口关闭 我在VC下,通过列出的当前计算机上的COM端口号,选择其中一个,点击一个按钮1,将此串口连接,可以读写数据。我想点击另一个按钮2关闭当前使用的串口,停止此串口的使用,可以再重新选择串口进行连接。 请教大家一下,怎么关闭串口呢,使按钮2能实现操作? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 在使用SetPortOpen(FALSE);之前最好设置一下你如:try{ m_Comm.SetCommPort(1); m_Comm.SetPortOpen(FALSE);}catch(...){ MessageBox("******");} 我是用API函数进行串口连接,没有控件,所以没有SetPortOpen函数呀. 你是用CreateFile打开的吧?那么直接CloseHandle就可以了。 就是用CreateFile打开的,奇怪我用CloseHandle后不管用.当我再重新用刚才的端口,端口已用. 吃饭了..要不你去下载一个" 软件名称:串口调试助手 SComAssistant V2.1" 是一个不错的串口调试助手 //声明类变量m_hComm//一个按钮响应函数中打开串口m_hComm = CreateFile(...); //另一个按钮响应函数中关闭串口//可以先判断一下串口句柄if(m_hComm == INVALID_HANDLE_VALUE || m_hComm == NULL) return;if(!CloseHandle(m_hComm)){ DWORD dwError = GetLastError(); //关闭不成功的原因} 如何处理heapalloc分配失败 关于mscomm控件串口通讯发送重复数据的问题,贴有代码,请指正 模拟鼠标发送消息 完全柔性绳的推挤 联想在美遭戴尔DELL幕后黑手 getcreattime和GetLastWriteTime 转化为CString不同的疑问 调试问题,急 怎么实现树的多选?解决加分,加分加分加分!在线等待 紧急求助,各位请指点! 如何运用一个程序的退出码? CWinThread::ExitInstance 请问 一个关于对话况的问题!
try
{
m_Comm.SetCommPort(1);
m_Comm.SetPortOpen(FALSE);
}
catch(...)
{
MessageBox("******");
}
那么直接CloseHandle就可以了。
//一个按钮响应函数中打开串口
m_hComm = CreateFile(...);
//另一个按钮响应函数中关闭串口
//可以先判断一下串口句柄
if(m_hComm == INVALID_HANDLE_VALUE || m_hComm == NULL)
return;
if(!CloseHandle(m_hComm))
{
DWORD dwError = GetLastError(); //关闭不成功的原因
}