Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Доступ к COM порту по сети


YuRock ©   (2004-04-20 16:23:00) 

Уважаемые мастера! У меня возникла необходимость достучаться к COM-порту другого компа. Если кто уже сталкивался, поделитесь советом, пожалуйста...

И еще: можно ли (в принципе) одновременно открыть один COM-порт 2 раза (в шаровом режиме)


tesseract   (2004-04-21 09:51:00) [1]

А зачем?????   Почему бы ни написать объект синхронизации, который будет решать что писать в порт??? пишеться сервер, который принимает/отправляет UDP дейтаграммы и пишет нужные данные в нужный порт. Открыть два раза 1 порт принципе невозможно.


YuRock   (2004-04-20 17:15:00) [2]

> Reindeer Moss Eater ©   (20.04.04 16:56) [5]

А приведите, пожалуйста, пример, в котором работает одновременное открытие порта несколько раз.


Reindeer Moss Eater   (2004-04-20 16:56:00) [3]

и видим, что нельзя дважды открыть порт..

и видим, что нельзя дважды открыть порт в этом конкретном примере


YuRock   (2004-04-20 16:50:00) [4]

> Jack128

Да что-то и у меня не получается...


YuRock   (2004-04-20 16:41:00) [5]

> Сервер удаленного порта + клиент удаленного порта

Ну это то понятно. Может легче как нибудь?..

> 2. Можно

На сколько я понял - из разных процессов. Ну это ладно. Главное - 1-й вопрос.


Jack128   (2004-04-20 16:41:00) [6]

var
 hPort: THandle;

procedure TForm1.Button2Click(Sender: TObject);
begin
 hPort := CreateFile('COM2', GENERIC_READ or GENERIC_WRITE,
    FILE_SHARE_WRITE or FILE_SHARE_READ, nil, OPEN_EXISTING,
    FILE_ATTRIBUTE_NORMAL, 0);
 if hPort = INVALID_HANDLE_VALUE then
   ShowMessage('Can not open');
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
 CloseHandle(hPort);
end; запускаем два экземпляра приложения и видим, что нельзя дважды открыть порт..


Reindeer Moss Eater   (2004-04-20 16:33:00) [7]

1. Сервер удаленного порта + клиент удаленного порта.

2. Можно


Наверх

Титульная страница Поиск, карта сайта Написать письмо