Вниз
Скачать: CL | DM;

OnClientRead у TServerSocket   Найти похожие ветки 

← →
Ezorcist   (2006-04-24 08:03) [0]

В процессе работы программы создаю несколько TServerSocket, назначаю им один и тот же OnClientRead. Как обратиться к св-вам компонета, который вызвал OnClientRead? Писал TServerSocket(Sender) неверно, тк Sender это TServerWinSocket.


← →
Сергей М. ©   (2006-04-24 08:29) [1]

Какие конкретно св-ва нужно получить/установить при этом ?


← →
Ezorcist   (2006-04-24 16:22) [2]

Name и Tag


← →
Сергей М. ©   (2006-04-24 16:24) [3]

А зачем, если не секрет ?

Я к тому, что м.б. не в ту сторону движешься, и конечная задача решается проще и изящней ...


← →
Ezorcist   (2006-04-24 17:07) [4]

Мне нужно знать от какого именно клиента приняты данные и к какому именно серверу он подключен.


← →
Сергей М. ©   (2006-04-24 17:13) [5]

Зачем ?
..

Ну раз это страшная тайна, то держи проктологический код:

for i:= 0 to ComponentCount - 1 do
 if Components[i] is TServerSocket then
     if TServerSocket(Components[i]) .Socket = Socket then
       begin
          ShowMessage(Components[i]).Name);
          ShowMessage(IntToStr(TServerSocket(Components[i]).Tag));
          break;
       end;


← →
Ezorcist   (2006-04-25 12:20) [6]

Ну это не страшная тайна просто проблема не в этом. Код в принципе подходит, только такой:

for i:= 0 to ComponentCount - 1 do
if Components[i] is TServerSocket then
    if TServerSocket(Components[i]) .Socket = Sender then
      begin
         ShowMessage(Components[i]).Name);
         ShowMessage(IntToStr(TServerSocket(Components[i]).Tag));
         break;
      end;

Но это долго как-то и не ловко( Нельзя как-то проще и изящней ...
?


← →
Сергей М. ©   (2006-04-25 12:32) [7]


> Ezorcist   (25.04.06 12:20) [6]


Ну да, конечно же

if TServerSocket(Components[i]) .Socket = Sender then

здесь ты прав.


> это долго как-то и не ловко( Нельзя как-то проще и изящней


Поэтому проктология и была упомянута.

А "попроще и поизящней" без переделки scktcomp.pas - никак.


← →
Ezorcist   (2006-04-25 13:40) [8]

Ну все-расно спасибо!



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.026 c
2-1157020656
валет
2006-08-31 14:37
2006.09.17
ip адреса


2-1156818456
verybadbug
2006-08-29 06:27
2006.09.17
Название месяца


2-1156745644
Steep
2006-08-28 10:14
2006.09.17
Запись CD&DVD


2-1156322233
Id
2006-08-23 12:37
2006.09.17
Соединение с базой


15-1156521942
hamster
2006-08-25 20:05
2006.09.17
Упакованные exe




   Наверх