[英]CreateFile COM port error 2
我正在尝试使用Visual Studio 2012(C ++)中的以下代码在Windows 7上打开并写入COM串行端口
printf("argv[2]= '%s'\n", argv[2]);
m_hCommPortSend= ::CreateFile(argv[2] ,GENERIC_READ|GENERIC_WRITE,0,0,OPEN_EXISTING,0,0);
if(m_hCommPortSend == INVALID_HANDLE_VALUE)
{
printf("%s error: %d\n", argv[2], GetLastError());
return -1;
}
此代码与argv [2]作为COM1或COM7一起使用时效果很好
我有另一个COM端口COM39,当我以argv [2]的形式传递COM39时,它没有打开,返回2的GetLastError()。
不知道为什么吗?
CreateFile的MSDN页面在“通信资源”下显示以下内容:
要指定大于9的COM端口号,请使用以下语法: \\\\.\\COM10
。 此语法适用于所有端口号和允许指定COM端口号的硬件。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.