Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
Vladgul Гость
|
Добавлено: Чт Июл 17 2003 14:19 Заголовок сообщения: Delphi. TThread. Обмен информацией по сети. |
|
|
Нужно: создать отдельный процесс, который будет заниматься приемом и обработкой информации передаваемой по сети (протокол UDP).
Можно ли в TThread использовать компоненты для обмена информацией по сети (TNMUDP или TNMTCP). Пытаюсь внутри процесса создать экземпляр класса TNMUDP. Определяю реакцию на событие OnDataReceived, но это событие никогда не происходит (естественно постоянно идет посылка данных на нужный IP и по нужному порту).
Можно ли вообще так делать или что я делаю не так? Может быть есть другой способ?
Как можно не используя стандартные компоненты прочитать порты протокола UDP. И послать информацию через них. |
|
Вернуться к началу |
|
|
anonymous Гость
|
Добавлено: Чт Июл 17 2003 21:15 Заголовок сообщения: Re: Delphi. TThread. Обмен информацией по сети. |
|
|
вообще то я пишу на С, но думаю в паскале должно работать можно использовать Winsock
1. создаём сокет (socket или WSASocket) 2. привязка (bind) 3. ожидаем (recvfrom или WSARecvFrom) |
|
Вернуться к началу |
|
|
Vladgul Гость
|
Добавлено: Пт Июл 18 2003 09:49 Заголовок сообщения: Спасибо. Есть еще другой вариант (кому интересно) (+) |
|
|
В других конфах подсказали. Если используются TThread, то нельзя использовать асинхронную передачу данных, основанную на событиях Windows, т.к. в потоках события не обрабатываются. В случае с Delphi нужно использовать компоненты Indy TidUDPClient и TidUDPServer.
Сам уже попробовал. Все работает. |
|
Вернуться к началу |
|
|
|