Возможно ли получить HANDLE с помощью QSerialPort аналогичный HANDLE получаемому с помощью CreateFile (winapi, windows.h)?
Есть код написанный на С++ и WinApi, в нем для обращения к устройству порт открывается с помощью:
LPTSTR port_name = TEXT("COM5");
HANDLE hCom = CreateFile((LPCWSTR)port_name,
GENERIC_READ | GENERIC_WRITE,
0,
NULL,
OPEN_EXISTING,
0,
NULL);
Код выше меняю на:
HANDLE hCom;
QSerialPort *serial;
serial = new QSerialPort();
serial->setPortName("COM5");
serial->setBaudRate(QSerialPort::Baud38400);
serial->open(QIODevice::ReadWrite);
hCom = serial->handle();
После этого изменения в коде обмен данными с устройством перестает работать. Код компилируется без ошибок, GetLastError при открытие порта возвращает 0. При записи в порт с помощью WirteFile, GetLastError начинает возвращать ошибку 997 ERROR_IO_PENDING.