Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.03.17;
Скачать: CL | DM;

Вниз

Одновременная работа с Com1 и Com3 под Win2k   Найти похожие ветки 

 
Greenman   (2003-01-22 06:24) [0]

Не получается одновременно работать с Com1 и Com3 под Win2k.
Делаю

FComPortHandle1 := CreateFile(PChar("COM1"),GENERIC_READ or GENERIC_WRITE,
0,nil,OPEN_EXISTING,
FILE_ATTRIBUTE_NORMAL or FILE_FLAG_OVERLAPPED,0);

FComPortHandle1 := CreateFile(PChar("COM3"),GENERIC_READ or GENERIC_WRITE,
0,nil,OPEN_EXISTING,
FILE_ATTRIBUTE_NORMAL or FILE_FLAG_OVERLAPPED,0);

После этого FComPortHandle2=INVALID_FILE_HANDLE

Причем, самое интересное, если вызывать их в обратном порядке,
то этот код работает нормально, правда читать/писать все равно не получается.
Как вообще тогда работать с большим количеством портов под w2k?
Их сейчас у меня 4 (и все заняты), а наверное будет еще больше.


 
Reindeer Moss Eater   (2003-01-22 09:00) [1]

Ты дважды присваиваешь FComPortHandle1 , и ни разу ничего не присваиваешь FComPortHandle2


 
Greenman   (2003-01-22 09:27) [2]

Это просто опечатка, в коде все нормально. Тем более, при тестировании эти два куска кода разнесены в два различных приложения, и получается весьма странный результат от порядка их запуска.


 
Reindeer Moss Eater   (2003-01-22 09:35) [3]

Предлагаешь всем анализировать код, который к вопросу имеет весьма отдаленное отношение?


 
Странник ©   (2003-01-22 10:58) [4]

Да просто порты сидят на одном прерывании.
COM1 - COM3, COM2 - COM4.
И в твоем случае (если считать что оба порта на UART метеринки) открывается один порт два раза.
Для того, чтобы так их использовать, необходимо чтобы (начиная с 3-го) порты были на специальной плате-расширителе, либо на встроенном модеме.


 
ksa3003 ©   (2003-01-22 11:29) [5]

Устами Странника глаголит истина, всё так и есть


 
DOOMin   (2003-01-22 11:58) [6]

чтобы работать под виндами нужно, чтобы все порты имели отдельное прерывание. Проверено! Иначе надо писать спец. драйвер или покупать плату с таким драйвером


 
Greenman   (2003-01-23 05:33) [7]

Ну чтож, я так и предпологал с самого начала.
Наверное стоит попробовать giveio, хотя тоже сомневаюсь что что-нибудь получиться



Страницы: 1 вся ветка

Текущий архив: 2003.03.17;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.022 c
1-54002
Zelius
2003-03-06 14:52
2003.03.17
Интересно, можно ли реализовать Delphi фичу Call Stack?


6-54152
WingGod
2003-01-24 02:45
2003.03.17
События...


14-54263
DeMoN-777
2003-02-28 13:39
2003.03.17
Распознование текста


7-54328
ATC
2003-01-16 17:30
2003.03.17
Как сделать файл неперемещаемым на NTFS партиции?


3-53951
SKing
2003-02-26 16:26
2003.03.17
Сущестует ли столбец в таблице?