Budowa TClientSocket

0

Witam, od jakiegoś czasu nurtuje mnie budowa TClientSocket oraz TServerSocket. Oba komponenty działają w trybie asynchronicznym - Winsock podsyła im odpowiedni komunikat jeżeli nadejdą informację na port. Problem w tym, że jak może to robić, skoro klasa TAbstractSocket będąca bazową dla TCustomSocket (z której wywodzą się z kolei TClientSocket i TServerSocket) sama dziedziczy po klasie TComponent, która nie posiada uchwytu. Jak więc mogą dochodzić do niej komunikaty?

Pytam dlatego, że chciałem przekształcić napisany przeze mnie moduł obsługujący sieć na komponent sieciowy. Moduł ten (który jest już ukończony) samodzielnie działa (mechanizm komunikatów jest przekierowany z Formularza programu). Nie mogę sobie jednak poradzić z obsługą komunikatów, a dokładniej, moja klasa na której zbudowany jest komponent nie ma uchwytu. Jestem w kropce. Próbowałem dziedziczyć po TWinControl która posiada THandle, ale na nic się to zdało - spowodowało tylko lawinę błędów których nie dochodziłem, ponieważ nie tędy droga. Wiem (z pliku ScktComp.int), że komponenty sieciowe w Delphi dziedziczą po TComponent, jak jednak odbierają komunikaty?

0

komunikaty odbiera tylko Tcustomwinsocket który ma uchwyt tworzony za pomocą AllocateHwnd w metodzie gethandle, więc nie ma w tym nic dziwnego.

1 użytkowników online, w tym zalogowanych: 0, gości: 1