C_and_CPP 板


LINE

直接切入正题 访问COM Port使用了 CreateFile ReadFile WriteFile..等Win32 API函式 用到"ReadFile"做读取时发现一个跟以前 使用C# Serial.Read很不一样的地方搞不太懂 问题1. C#使用 Serial.Read时可以以BytesToRead被动决定要读取时的指定长度, 反之在C/C++使用ReadFile反而是要指定主动决定要读取多长, 可是使用者如果不知道回传资料长度如何指定? BOOL WINAPI ReadFile( __in HANDLE hFile, __out LPVOID lpBuffer, // 字串Buffer __in DWORD nNumberOfBytesToRead, // 要读取的Byte数 __out LPDWORD lpNumberOfBytesRead, // API回填已读取Byte数 __in LPOVERLAPPED lpOverlapped // OVERLAPPED ); --



※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 114.137.74.217 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/C_and_CPP/M.1590664120.A.6B9.html
1F:推 SeamusBerloz: lpNumberOfBytesRead 不就是回传长度吗? 05/28 19:51
2F:→ SeamusBerloz: nNumberOfBytesToRead 应该是指最多不要超过此长度 05/28 19:52
3F:→ SeamusBerloz: 吧。 05/28 19:52
4F:→ annheilong: 一种做法是跟他说buffer大小,然後看实际读多少回来 05/28 23:30
5F:→ annheilong: 通常protocol读完head後面 会再读取後续资料长度 05/28 23:31
6F:→ annheilong: 例如读完0x02 head後,再读2 bytes知道剩下多长(不含 05/28 23:32
7F:→ annheilong: tail跟CRC 05/28 23:32
8F:→ annheilong: 所以读到1 byte 0x02後,再读2 bytes知道後面长度 05/28 23:33
9F:→ annheilong: 然後回圈读取後面长度 读完再读tail跟CRC 05/28 23:34
10F:→ getaway: 开心,原本还担心不知道达人我在问什麽,看完回覆後有一 05/29 02:18
11F:→ getaway: 些可以尝试的想法了,以protocol来处理也可以,只是蛮确 05/29 02:18
12F:→ getaway: 定以前处理C#时的ByteToRead在沟通介面上就已经预知stdi 05/29 02:18
13F:→ getaway: n buffer可以读进的资料长度 05/29 02:18
14F:→ kobe8112: 因为那不是预知啊...那是已经放在缓冲区的资料 05/29 11:55
15F:→ getaway: 补上意外发现的处理方式但未经验证SetCommMask 06/03 11:20
16F:→ getaway: 跟WaitCommEvent 06/03 11:21
17F:→ getaway: 有兴趣的参考如右边连结 https://reurl.cc/L3DxkX 06/03 11:24







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:WOW站内搜寻

TOP