Jak połączyć dwa komputery ?
Opisze w tym artykule jak stworzyć prostą aplikację umożliwiającą połączenie dwóch komputerów. Zaczynamy!

W delphi mamy dwa komponenty, które umożliwiają nam połączenie. Jest to TClientSocket i TServerSocket w palecie Internet. Żeby połączyć się do jakiegoś komputera potrzebny jest nam adres serwera IP i numer portu (od 0 do 65535).

Zrobimy program który będzie serwerem i program który będzie klientem. Serwer otwiera port klientowi, który za pomocą IP i numeru otwartego portu, łączy się z serwerem.

Stwórz nową aplikację i wstaw tam komponent TClientSocket i TServerSocket z palety Internet. Zmień ich nazwe na ClientSocket i ServerSocket. Teraz wstaw 2x na forme komponent Edit. Te dwa pola będą służyły do wpisywania adresu IP i portu. Teraz wstaw 2 przyciski. Ich caption zmień na Hostuj i Rozłącz. W przypadku pierwszego przycisku nazwa nie ma znaczenia, ponieważ wstawimy jeszcze 2 RadioButtony, dzięki którym użytkownik będzie mógł wybrać czy będzie klientem czy serwerem, jęzeli będzie serwerem to caption będzie Hostuj, jeżeli klientem caption będzie Połącz. Tak jak już wspomniałem wstaw 2 RadioButton-y. Pierwszemu nadaj caption Serwer, a drugiemu Klient. Dodaj jeszcze komponent Memo.

Zaczynamy pisać kod!

1) W inspektorze obiektów komponentu RadioButton 1 (serwer), znajdź opcje Checked, nadaj jej wartość true.

2) Wygeneruj zdarzenie OnClick komponentu RadioButton 1, i dopisz takie linijki:
[crayon-5f937e868c2b3797759454/]
3) Wygeneruj zdarzenie OnClick komponentu RadioButton 2, i dopisz takie linijki:
[crayon-5f937e868c2b7083291615/]
4) Wygeneruj zdarzenie OnClick, komponentu button1 (hostuj, połącz), i dopisz tam takie linijki:
[crayon-5f937e868c2b8864302718/]
5) Wygeneruj zdarzenie OnChange w komponecie Edit1 (IP), i dopisz tam takie linijki:
[crayon-5f937e868c2b9667528309/]
6)Wygeneruj zdarzenie OnChange w komponecie Edit3 (Port), i dopisz tam takie linijki:
[crayon-5f937e868c2ba645293238/]
Pierwszą część mamy już za sobą :) Wpierwszej części utworzyliśmy sporo procedur, zasada działania tego programu jest bardzo prosta, najważniejszą rzeczą jest odzczytanie adresu IP i numeru Portu z pól tekstowych, i rozrużnianie czy dana osoba jest serwerem czy klientem. Co będziemy robić w części drugiej? Pamiętasz, stworzyliśmy komponent Memo, trzeba go jakoś wykorzystać ;) Dzięki temu komponentowi będą wświetlać wiadomości od serwera, np. potwierdzenie przyjęcia klienta. Zaczynamy część drugą!

1)Zaznacz komponent ServerSocket i wygeneruj zdarzenie OnAccept i dopisz takie linijki:
[crayon-5f937e868c2bb141126088/]
2)Zaznacz komponent ClientSocket i wygeneruj zdarzenie OnRead i dopisz takie linijki:
[crayon-5f937e868c2c0422724846/]
3)Wygeneruj zdarzenie OnClose formy i dopisz takie linijki:
[crayon-5f937e868c2c3960480020/]
To by było na tyle, takie same linijki wpisz do zadarzenia OnClick Button2 (rozłącz). Poniżej prezentuje cały kod źródłowy programu:
[crayon-5f937e868c2c4402725022/]
Mam nadzieję że wszystko zrozumieliście, jak nie to piszcie e-maila uno11@poczta.onet.pl, lub skontaktujcie się ze mną przez gg: 3854058

Pozdrawiam
Uno

Autor: Uno