Вверх ↑
Этот топик читают: Гость
Ответов: 84
Рейтинг: 1
#76: 2014-12-26 00:31:35 ЛС | профиль | цитата
Столкнулся с проблемой, не могу решить.
На разных компах запущены TCP_Server
Нужно заставить TCP_Client опросить их все на основе списка.
Делаю выборку, но опрашивается только первый в списке.
Понимаю, что вероятно нужно дать TCP_Client время для получения данных, прежде чем переходить к следующему запросу, но не знаю как правильно реализовать.

Прототип
Add(MainForm,2953706,91,252)
{
Width=225
Height=235
link(onCreate,3376617:doOpen,[])
}
Add(ComboBox,13731562,140,35)
{
Left=20
Top=10
Width=170
Height=21
Strings=#11:192.168.1.2|9:127.0.0.1|
Text="Список серверов"
}
Add(Button,11445039,77,112)
{
Left=65
Top=160
Width=75
Caption="Опросить"
link(onClick,10795900:doEnum,[])
}
Add(ArrayEnum,10795900,140,112)
{
link(onItem,15711172:doPing,[])
link(Array,13731562:Array,[])
}
Add(Ping,15711172,196,112)
{
Name=""
link(onFind,7499519:doOpen,[])
}
Add(TCP_Client,7499519,259,112)
{
Port=180
link(onRead,9156683:doEvent1,[])
}
Add(Hub,9156683,308,112)
{
link(onEvent1,10200186:doAdd,[])
link(onEvent2,7499519:doClose,[(334,125)(334,155)(247,155)(247,125)])
}
Add(Memo,10200186,357,112)
{
Left=20
Top=70
Width=170
}
Add(TCP_Server,3376617,161,266)
{
Port=180
link(onConnect,3376617:doSend,[(206,279)(206,310)(149,310)(149,286)])
link(Data,545704:Text,[])
}
Add(Edit,545704,161,203)
{
Left=135
Top=40
Width=55
Text="0"
}
Add(Label,502088,91,203)
{
Left=20
Top=40
Width=113
Height=17
Caption="Данные для клиента:"
}
карма: 1

0
Разработчик
Ответов: 26153
Рейтинг: 2127
#77: 2014-12-26 01:57:55 ЛС | профиль | цитата
NordWest писал(а):
Нужно заставить TCP_Client опросить их все на основе списка

А для чего опросить -- просто для проверки доступности серверов или для получения каких-то данных с доступных серверов
карма: 22

0
Ответов: 84
Рейтинг: 1
#78: 2014-12-26 07:22:52 ЛС | профиль | цитата
На серверной части по запросу будет подгружен небольшой текстовый файл, содержимое которого и нужно передать.
Много времени тратится на загрузку файла?


карма: 1

0
Разработчик
Ответов: 26153
Рейтинг: 2127
#79: 2014-12-26 09:55:34 ЛС | профиль | цитата
NordWest писал(а):
На серверной части по запросу будет подгружен небольшой текстовый файл

А сервера сам делал или чужие
карма: 22

0
Ответов: 84
Рейтинг: 1
#80: 2014-12-26 10:34:50 ЛС | профиль | цитата
Делал сам.
Функция серверной части - периодически просматривать на дисках D и E папки VIDEO для определения глубины видеоархива. Информация сбрасывается в текстовый файл, который по запросу клиентской части и нужно передать. Так же анализируется активность сетевого трафика - эта информация то же отдается клиенту по запросуно уже через другой порт.

Код клиента и сервера - http://forum.hiasm.com/forum_serv.php?q=56&id=3852
карма: 1

0
Разработчик
Ответов: 26153
Рейтинг: 2127
#81: 2014-12-26 11:10:29 ЛС | профиль | цитата
Как вариант могу посоветовать -- на клиентской части к списку в конец приклеить маркер конца списка, а на клиентской части ловить этот маркер, и после отлова делать дисконнект от клиента, и только после того переходить к следующему клиенту.
карма: 22

0
81
Сообщение
...
Прикрепленные файлы
(файлы не залиты)