CreateFile打开串口时串口名字的写法

打开COM1到COM9用:

m_hCom = CreateFile(_T("COM1:"), GENERIC_READ | GENERIC_WRITE, 0, NULL, OPEN_EXISTING, NULL, NULL);

或者

m_hCom = CreateFile(_T("COM1"), GENERIC_READ | GENERIC_WRITE, 0, NULL, OPEN_EXISTING, NULL, NULL);

(第一个参数有没有分号都可以)

 

或者

m_hCom = CreateFile(_T(".//COM1"), GENERIC_READ | GENERIC_WRITE, 0, NULL, OPEN_EXISTING, NULL, NULL);

(COM1后面不能有分号)

 

打开COM10之后的串口

m_hCom = CreateFile(_T(".//COM15"), GENERIC_READ | GENERIC_WRITE, 0, NULL, OPEN_EXISTING, NULL, NULL);

 

 

在网上查到:

    "COMX:",
    "/$device/COMX",
    "/$bus/PCMCIA_0_0_0"。
 其中第一种方式只适合从0~9的设备名,亦即COM10:中10超出了设备命名规范,所以用CreateFile打开设备失败。
 使用第二种方式/$device/COM10,作为参数传递给CreateFile,成功打开COM口,通讯正常,搞定。
 第三种是用在总线驱动上的,暂时没涉及到

 

第二种方法试了好多编,还是没打开。

 

以上结果只在XP平台下测试,串口15为USB转串口 VS使用Unicode编码

转载于:https://www.cnblogs.com/ezhong/archive/2011/04/08/2171481.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值