Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

OnClientRead у TServerSocket [D7, WinXP]


Ezorcist ©   (2006-04-24 08:03:00) 

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


Ezorcist   (2006-04-25 13:40:00) [1]

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


Сергей М.   (2006-04-25 12:32:00) [2]


> Ezorcist   (25.04.06 12:20) [6]


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

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

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


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


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

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


Ezorcist   (2006-04-25 12:20:00) [3]

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

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

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


Сергей М.   (2006-04-24 17:13:00) [4]

Зачем ?
..

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

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-24 17:07:00) [5]

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


Сергей М.   (2006-04-24 16:24:00) [6]

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

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


Ezorcist   (2006-04-24 16:22:00) [7]

Name и Tag


Сергей М.   (2006-04-24 08:29:00) [8]

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


Наверх

Титульная страница Поиск, карта сайта Написать письмо