Pobierz prezentację
Pobieranie prezentacji. Proszę czekać
OpublikowałFranciszka Łebkowski Został zmieniony 11 lat temu
1
Programowanie warstwy sieciowej za pomocą obiektów INDY (komponenty otwarte)
Autor Roman Jędras Prowadzący: dr inż. Antoni Izworski Przedmiot: Programowanie warstwy sieciowej
2
KOMPONENTY OTWARTE - INDY
Komponenty te obsługują programowanie gniazdkowe niskiego poziomu oraz większość powszechnie znanych protokołów internetowych. Borland, w celu zastąpienia „przestarzałych komponentów : TCS ,TSS, zaproponował stosowanie odpowiednich komponentów INDY. Dostarcza kolekcję internetowych otwartych obiektów, które poprzednio nazywane były WinShoes (termin pochodzi od WinSock – nazwy biblioteki gniazdowej Windows).
3
KOMPONENTY OTWARTE - INDY
Najnowsze wersje otwartych komponentów Indy znaleźć można pod adresem internetowym: Są to darmowe komponenty uzupełnione wieloma przykładami oraz plikami pomocy.
4
KOMPONENTY OTWARTE - INDY
Komponenty Indy rozpoznawane są po przedrostku „Id”. Pakiety INDY zawiera ponad 100 obiektów zawierających aplikacje klient – serwer TCP/IP dla rozmaitych komponentów, zawiera składniki związane z ‘Zapewnieniem bezpieczeństwa’ oraz kodowaniem ich w sposób asynchroniczny, co nie powoduje blokowania realizacji innych fragmentów kodu aplikacji sieciowej.
5
KOMPONENTY OTWARTE - INDY
Komponenty te obsługują takie protokoły jak: TCP/IP UDP – bez połeczęniowe Protokoły kontroli poprawności połączeń: ICMP(Internet Control Message Protocol) Protokoły zarządzania siecią ( ): SNMP (Simple Network Managament Protocol) Protokoły zdalnego włączania się do sieci: TELNET (Network Terminal Protocol) Protokoły przesyłania plików FTP (File Trnasfer Protocol)
6
KOMPONENTY OTWARTE - INDY
Komponenty INDY znajdują się na zakładce : Operacje gniazdowe wykonywane z poziomu Indy, powinny być wykonywane za pomocą wątku albo komponentu IdAntiFreeze stanowiącego prostszą alternatywę . Serwery Indy wykorzystują architekturę wielowątkową, którą sterować można za pomocą komponentu IdThreadMgrDefault. Komponent ten jest domyślnym obiektem, drugi obiekt idThreadMgrPool obsługuje odpytywanie wątków.
7
KOMPONENTY OTWARTE - INDY
Komponenty INDY w praktyce Delphi umożliwia zestawić prostą komunikację dwóch Programów przez gniazdo w obszarze sieci poprzez zastosowanie komponentów IdTCPClient oraz IdTCPServer. Pierwszym krokiem zmierzającym do uzyskania w/w komunikacji jest ustalenie wspólnego portu zarówno dla aplikacji klient jak i serwer
8
KOMPONENTY OTWARTE – INDY KLIENT
9
KOMPONENTY OTWARTE - INDY
Do metod obiektu klienta należą: Port ( wartość int 3500) Host (adres serwera np.: localhost ) Connect (aktywacja połończenia z serwerem) Conected (wartosc boolean nawiązania połonczenia stosowana w warunku if) Write (wysłanie ciągów tekstu do serwera) WriteLn( wysłanie lini tekstu zakończonego \n ) Read (odczyt ciagu tekstu z serwera) ReadLn (odczyt lini tekstu z serwera zakończonego \n) Disconnect (rozłonczenie z serwerem)
10
KOMPONENTY OTWARTE - INDY
11
KOMPONENTY OTWARTE – INDY SERWER
12
KOMPONENTY OTWARTE – INDY
Metody Serwera DefaultPort ( podanie domyślnego portu pracy serwera) Active (uruchomienie i ustawienie serwera w nasłuch na klientów) AThread wątek dzięki któremu mamy dostęp do metody Connection (połąnczenie) AThread.Connection.ReadLn (odczytanie przez serwera informacji przesłaniej od klienta) AThread.Connection.Writeln (zapis przez serwer informacji przesłanej do klienta)
13
KOMPONENTY OTWARTE – INDY
Zdarzenia serwera Connect(AThread: TIdPeerThread); (klient podłonczony do serwera) Server1Execute(AThread: TIdPeerThread); (serwer w trakcie wykonywania)
14
KOMPONENTY OTWARTE – INDY
15
KOMPONENTY OTWARTE – INDY
16
KOMPONENTY OTWARTE – INDY
Program Komunikacja klient - serwer
17
Czas na Pytania :) Dziękuje za uwagę.
Jeśli są jakieś pytania, postaram się na nie odpowiedzieć. Dziękuje za uwagę.
Podobne prezentacje
© 2024 SlidePlayer.pl Inc.
All rights reserved.