![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Доступ к 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. Можно