|
22 / 22 / 5
Регистрация: 18.03.2010
Сообщений: 331
|
||||||
RAD 2010 и Indy 1016.11.2010, 10:49. Показов 8095. Ответов 26
Метки нет (Все метки)
Доброго все времени суток, у меня возник вопрос, ранее писал программы по сетевому взаимодействию по TCP/IP в Builder C++ 6 с помощью TServerSocket и TClientSocket, достаточно удобные элементы, а вот в RAD 2010 для этого есть только компоненты Indy, а именно TIdTCPServer и TIdTCPClient, но столкнулся с проблемой, в этих компонентах видимо работа больше всего связанна с потоком, то есть надо уметь им оперировать, класть и вынимать(перехватывать). только как это делать я так и не разобрался.
Мне необходимо понять, как от сервера послать клиенту. тестирую через telnet Так выглядит сервер, который только может принимать информацию
0
|
||||||
| 16.11.2010, 10:49 | |
|
Ответы с готовыми решениями:
26
Indy 10 : замена версии в RAD XE Работа с объектами в C++ Builder 2010 (RAD 2010) Delphi 2010 (RAD Studio 2010) критическая область |
|
3957 / 1812 / 184
Регистрация: 21.11.2009
Сообщений: 2,540
|
|||
| 28.11.2010, 22:00 | |||
![]() Есть же специально созданные компоненты: TIdTelnet и TIdTelnetServer... Есть также книга "Indy in Depth", написанная разработчиком Indy (Ч.Ховер, a.k.a. Кудзу). Однако, могу сказать, что русскоязычный вариант обладает минимумом полезной информации...
1
|
|||
|
22 / 22 / 5
Регистрация: 18.03.2010
Сообщений: 331
|
||||
| 29.11.2010, 20:52 [ТС] | ||||
|
Нашел перевод этой книги, но она почему то для Delphi, или этот компонент изначально создавался под Delphi, а в Builder портировался. мог бы ссылку выложить, для аудитории, но боюсь не приветствуется выкладывать ссылки на другие источники! Добавлено через 21 час 39 минут Вопрос, каким образом можно реализовать функцию heartbeat, правда этот термин несколько не из этой области, он охватывает кластериацию, но смысл остается тем же, как мне реализовать, чтобы мой сервер опрашивал все активные(те что находятся в списке ContextList) соединения с клиентами, живы они и нет. тем самым чистя список от уже отвалившихся соединений(клиентов)
0
|
||||
|
3957 / 1812 / 184
Регистрация: 21.11.2009
Сообщений: 2,540
|
|||
| 29.11.2010, 22:43 | |||
|
Используйте TIdTelnetServer, а не извращайтесь над "голым" TCP. ![]() Выше я показал, как при подключении клиента добавить идентификатор контекста в общий список. Можете создать отдельный поток, в котором будете по очереди высылать клиенту известный пакет (можете реализовать обмен командами через перечисление). На клиенте должна быть функция (выполняющаяся в отдельном потоке), ожидающая приёма сообщения и отправляющая такую же команду обратно серверу. Реализаций можно много придумать.. Хотя опять же, для TCP сервера от Indy это почти не имеет смысла, так как уже реализовано и вынесено в событие OnDisconnect.
0
|
|||
|
22 / 22 / 5
Регистрация: 18.03.2010
Сообщений: 331
|
||||
| 29.11.2010, 23:29 [ТС] | ||||
|
0
|
||||
|
3957 / 1812 / 184
Регистрация: 21.11.2009
Сообщений: 2,540
|
||||||||
| 30.11.2010, 00:04 | ||||||||
![]() Нашёл один из своих проектов, где использовал реализацию подобного потока. Если интересно, функция имеет следующий вид:
0
|
||||||||
|
22 / 22 / 5
Регистрация: 18.03.2010
Сообщений: 331
|
|||
| 30.11.2010, 13:03 [ТС] | |||
|
Вопрос: acKeepAlive - это является исключением в данном случае?
0
|
|||
|
3957 / 1812 / 184
Регистрация: 21.11.2009
Сообщений: 2,540
|
||
| 30.11.2010, 13:14 | ||
|
0
|
||
| 30.11.2010, 13:14 | |
|
Помогаю со студенческими работами здесь
27
Rad Studio 2009 и Indy 9 RAD 2010 RAD Studio 2010
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога
SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
|
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога
SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
|
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
|
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога
SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
|
|
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога
Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip"
Извлеките архив и вы увидите. . .
|
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога
Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д.
Сборка примера
Скачайте. . .
|
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net
REST сервисы временно не работают, только через Web.
Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
|