\\.\COM10 超过10的路径需要改,如果为COM1至COM9,可使用“COM1”-“COM9”作为文件名传递给CreateFile()
函数,函数可成功返回。但是,如果操作对象为COM10及以上的端口,以此方式命
名文件名调用CreateFile()函数会返回INVALID_HANDLE_VALUE,表示端口无法打开。
产生这种奇怪现象的原因是:微软预定义的标准设备中含有“COM1”-“COM9”。所以
,“COM1”-“COM9”作为文件名传递给函数时操作系统会自动地将之解析为相应的
设备。但对于COM10及以上的串口,“COM10”之类的文件名系统只视之为一般意义
上的文件,而非串行设备。
为了增加对COM10及以上串行端口的支持,微软规定,如果要访问这样的设备,应
使用这样的文件名(以COM10为例):\\.\COM10