在C/C++中打开与COM端口的连接时出错
Error with opening a connection with COM port in C/C++
我使用的是Windows 8.1 Pro机器。好,我正在尝试打开串行设备的COM端口连接。我的代码如下:
#include<stdio.h>
#include<windows.h>
int main(void)
{
HANDLE hcomm;
char *comPort = "COM6";
hcomm = CreateFile(comPort, GENERIC_READ | GENERIC_WRITE, 0, 0,
OPEN_EXISTING, 0, NULL);
if(hcomm = INVALID_HANDLE_VALUE)
{
printf("Connection Failed...n");
}
else
printf("Connection Succeded....n");
//return hcomm;
}
}
但这个代码对我不起作用。请给我一些错误的地方的建议。
检查GetLastError()的值。GetLastError()==0成功。
另外,您的if
条件是将hcomm重新初始化为无效句柄。注意if
条件中从赋值运算符到比较运算符的变化。请将您的代码更改为以下,看看它是否解决了您的问题:
if(hcomm == INVALID_HANDLE_VALUE) {
printf("Handle creation failed with error %d", GetLastError());
}
else {
printf("Handle creation successful");
}
相关文章:
- 访问者访问变体并返回不同类型时出错
- 在Linux for Windows上编译C++代码时出错
- 读取文件的最后一行并输入到链接列表时出错
- 重载操作程序时出错>>用于类中的字符串 memebr
- 调用专用模板时出错"no matching function for call to [...]"
- 断开连接后重新连接boost beast(asio)websocket和http连接时出错
- 通过 gdb 连接到远程 gdb 服务器时出错
- 连接时字符串"\0"为空时出错
- 将工作线程信号与主窗口插槽 (Qt5) 连接时出错
- QT 5.5 SSLHandshakeFailedError(尝试使用自签名证书连接时出错)
- 连接qt和matlab时出错
- 连接字符串 (C++) 时出错
- 在同一 unix 套接字连接中读取元素两次时出错
- 升压信号2 - 通过插槽断开连接时出错
- 在C/C++中打开与COM端口的连接时出错
- 在c++程序中连接access数据库时出错
- 在WebSocket++中关闭连接后出错
- 全局路由 结合无线网络和点对点连接时出错
- mpiexec -连接服务出错
- 在非阻塞连接()时出错