Я звоню 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
, что говорит о том, что он действителен.