Вверх ↑
Ответов: 117
Рейтинг: 1
#1: 2015-04-03 14:10:24 ЛС | профиль | цитата
Управление и команды серверу, а также кому слать я могу реализовать, я лишь не могу разделить на точке onRead от сервера данные от трех клиентов каждый отдельно. Визуальная схемка ниже, только понятно, что на месте компонета Hub надо как то разделить потоки.

Add(MainForm,3448458,84,84)
{
Width=422
Height=509
Position=1
link(onCreate,12759448:doEvent1,[(219,104)(219,160)])
}
Add(TCP_ServerEx,5296270,413,154)
{
ServerPort=1001
link(onRead,7659325:doEvent1,[])
}
BEGIN_SDK
Add(EditMultiEx,9763113,3,3)
{
WorkCount=#6:##open|15:doClose=doClose|13:doSend=doSend|5:##add|8:##select|8:##delete|7:##clear|9:##hselect|9:##hdelete|14:doSend1=doSend|
EventCount=#13:onRead=onRead|19:onConnect=onConnect|25:onDisconnect=onDisconnect|15:onError=onError|21:onProgress=onProgress|
VarCount=#7:##count|7:##index|8:##handle|13:Active=Active|5:IP=IP|
Width=370
Height=270
Point(##add)
Point(##select)
Point(##delete)
Point(##clear)
Point(##hselect)
Point(##hdelete)
Point(##count)
Point(##index)
Point(##handle)
link(doClose,9333889:doClose,[(68,16)(68,111)])
link(Active,9333889:Active,[(30,208)(174,208)])
link(IP,9333889:IP,[(37,208)(181,208)])
}
Add(TCP_Connection,9333889,168,105)
{
Point(onError)
Point(onProgress)
link(onRead,9763113:onRead,[(286,111)(286,9)])
link(onConnect,9763113:onConnect,[(286,118)(286,16)])
link(onDisconnect,9763113:onDisconnect,[(286,125)(286,23)])
link(onError,9763113:onError,[(286,132)(286,30)])
link(onProgress,9763113:onProgress,[(286,139)(286,37)])
}
END_SDK
Add(TCP_Client,6538611,420,287)
{
Port=1001
IP="127.0.0.1"
}
Add(Hub,12759448,238,154)
{
OutCount=4
link(onEvent1,5296270:##open,[])
link(onEvent2,6538611:doOpen,[(336,167)(336,293)])
link(onEvent3,4979280:doOpen,[(325,174)(325,349)])
link(onEvent4,4213358:doOpen,[(336,181)(336,405)])
}
Add(TCP_Client,4979280,420,343)
{
Port=1001
IP="127.0.0.1"
}
Add(Timer,14669755,140,364)
{
link(onTimer,12974517:doEvent1,[])
}
Add(FormatStr,9417719,238,336)
{
Mask="111"
link(onFString,6538611:doSend,[(345,342)(345,307)])
}
Add(FormatStr,13909718,238,392)
{
Mask="222"
link(onFString,4979280:doSend,[(345,398)(345,363)])
}
Add(Hub,12974517,189,364)
{
OutCount=3
link(onEvent1,9417719:doString,[(221,370)(221,342)])
link(onEvent2,13909718:doString,[(221,377)(221,398)])
link(onEvent3,12116866:doString,[(221,384)(221,454)])
}
Add(FormatStr,12116866,238,448)
{
Mask="333"
link(onFString,4213358:doSend,[(345,454)(345,419)])
}
Add(TCP_Client,4213358,420,399)
{
Port=1001
IP="127.0.0.1"
}
Add(Memo,8542496,623,84)
{
Left=11
Top=61
Width=95
Height=375
AddType=1
ScrollBars=2
}
Add(Memo,12638201,623,161)
{
Left=131
Top=61
Width=95
Height=375
AddType=1
ScrollBars=2
}
Add(Memo,4556365,623,245)
{
Left=261
Top=61
Width=95
Height=375
AddType=1
ScrollBars=2
}
Add(Label,15466551,161,28)
{
Left=30
Top=30
Width=49
Height=17
Caption="Клиент 1"
}
Add(Label,183582,238,28)
{
Left=160
Top=30
Width=49
Height=17
Caption="Клиент 2"
}
Add(Label,10237509,322,28)
{
Left=290
Top=30
Width=49
Height=17
Caption="Клиент 3"
}
Add(Hub,7659325,483,154)
{
OutCount=3
link(onEvent1,8542496:doAdd,[(537,160)(537,90)])
link(onEvent2,12638201:doAdd,[])
link(onEvent3,4556365:doAdd,[(553,174)(553,251)])
}

карма: 0

0
файлы: 3code_35412.txt [1.1KB] [109], code_35413.txt [2.1KB] [189], code_35445.txt [3KB] [175]