ошибка при открытии порта

Моя проблема в том, что я должен попробовать и проверить с разными port_name как 7 или 14 или 25. Это не открытие или обработка последовательных данных, дескриптор просто совпадает с if состояние и закрывает ручку. Есть ли проблемы с кодом?

void command_handler::start()
{
char port_name[] = "COM7:";     /* Name of the serial port */

serial_port = CreateFile(port_name, GENERIC_READ | GENERIC_WRITE, 0, 0, OPEN_EXISTING, 0, 0);
/* Make sure port was opened */

if (serial_port == INVALID_HANDLE_VALUE)
{
fprintf(stderr, "Error opening port\n");
printf("I'm here");
CloseHandle(serial_port);
exit(0);
}
set_up_serial_port(serial_port, baud_rate);
process_serial_data = false;
}

0

Решение

Вы пробовали ниже называть:

char port_name[] = "\\\\.\\COM7";

Второй вопрос, возможно, заключается в разнице CHAR а также WCHAR, Я думаю, что вы должны отправить WCHAR строка в API.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]