Странно работает CreateFile
От: Master-Win Россия  
Дата: 17.06.08 08:05
Оценка:
Здравствуйте, уважаемые.

Использую CreateFile для открытия последовательных портов. При этом она очень странно себя ведет. При открытии портов COM1 ... COM9 ведет себя нормально, а при попытке открыть порты COM10 и выше все время возвращает ошибку и устанавливает код 2 — типа не может найти указанный порт. Хотя этот порт точно есть! В чем может быть причина??

Заранее благодарен, mailto:dimon-main@mail.ru
Re: Странно работает CreateFile
От: Lonely Dog Россия  
Дата: 17.06.08 08:11
Оценка: 3 (1)
Здравствуйте, Master-Win, Вы писали:

Попробуй открыть COM порт c именем вида: \\.\COM10
Re[2]: Странно работает CreateFile
От: Master-Win Россия  
Дата: 17.06.08 08:22
Оценка:
LD>Попробуй открыть COM порт c именем вида: \\.\COM10

Все заработало!! Большое спасибо. Не могли бы объяснить почему без дополнительных символов в начале не работает. Почитал в MSDN — ничего об этом не нашел
Странно работает CreateFile для COM10
От: Were  
Дата: 17.06.08 08:36
Оценка:
#Имя: FAQ.winapi.createfile.com10
Здравствуйте, Master-Win, Вы писали:

MW>Использую CreateFile для открытия последовательных портов. При этом она очень странно себя ведет. При открытии портов COM1 ... COM9 ведет себя нормально, а при попытке открыть порты COM10 и выше все время возвращает ошибку и устанавливает код 2 — типа не может найти указанный порт. Хотя этот порт точно есть! В чем может быть причина??


LD>>Попробуй открыть COM порт c именем вида: \\.\COM10


MW>Все заработало!! Большое спасибо. Не могли бы объяснить почему без дополнительных символов в начале не работает. Почитал в MSDN — ничего об этом не нашел


Дык в MSDN англицким по белому написано:

To specify a COM port number greater than 9, use the following syntax: "\\.\COM10". This syntax works for all port numbers and hardware that allows COM port numbers to be specified.

http://msdn.microsoft.com/en-us/library/aa363858(VS.85).aspx

А не работает потому, что COM1...COM9 это зарезервированные виндой ссылки на порты, по которым их можно открыть. Полный список таких имен:

CON, PRN, AUX, NUL, COM1, COM2, COM3, COM4, COM5, COM6, COM7, COM8, COM9, LPT1, LPT2, LPT3, LPT4, LPT5, LPT6, LPT7, LPT8, and LPT9

http://msdn.microsoft.com/en-us/library/aa365247.aspx

Как видите COM10 в этом списке нет )
com порт createfile
Re[4]: Странно работает CreateFile
От: Master-Win Россия  
Дата: 17.06.08 08:42
Оценка:
Здравствуйте, Were, Вы писали:

...

Просто у меня видимо старый MSDN )) Спасибо!!
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.