我正在调用WriteFile将数据发送到调制解调器:
BOOL writeResult = WriteFile(m_hPort, p_message, length, &numOut, NULL);
在哪里:
m_hPort
是有效的HANDLE
- p_message 是一个
unsigned char*
包含ate0\r
- 长度是
int
一个值为 5 - numOut
unsigned long
初始化为 0
偶尔我会看到这个方法成功但是 numOut != length
WriteFile 如何在不发送任何数据的情况下返回成功?
编辑这就是我创建句柄的方式:
HANDLE hPort = CreateFileA("\\\\.\\COM5", GENERIC_READ | GENERIC_WRITE, 0, NULL, OPEN_EXISTING, 0, NULL);
我已经检查了退货,但这并不INVALID_HANDLE_VALUE
表明它是有效的。