• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Biblioteka Winsock i chęć jej poznania. Potrzebne wytłumaczenie.

0 głosów
168 wizyt
pytanie zadane 21 stycznia 2016 w C i C++ przez karnal3 Nowicjusz (120 p.)

Witam. Dostałem za zadanie napisać prosty chat. Dostałem w tym celu link do tutoriala :

http://www.binarytides.com/winsock-socket-programming-tutorial/

Jest on świetnie wytłumaczony lecz znalazłem także coś takiego :

http://www.binarytides.com/code-tcp-socket-server-winsock/

Program z drugiego linku działa w taki sposób, że przez telnet wysyłany jest znak do serwera i serwer ten sam znak zwraca do konsoli telnetu i moja prośba jest taka : Czy ktoś potrafi mi wytłumaczyć jak biblioteka Winsock działa i czemu ten drugi program jest tak a nie inaczej zbudowany ? Bo dla mnie jest idealny, muszę zbudować identyczny ale nie wiem jak ugryźć Winsock. Dowiedziałem się z 1 linku jak on działa, jak stworzyć socket i tak dalej, ale nie wiem w którym momencie mogę po deklaracji tego wszystkiego móc zaimplementować swój kod, czyli po prostu nie wiem jak użyć tych deklaracji w moim programie.

 

1 odpowiedź

+2 głosów
odpowiedź 21 stycznia 2016 przez mbabane Maniak (57,520 p.)

na laboratoriach z sieci dostawalismy, do instrukcji laboratoryjnej, prosty schemat dzialania programu moze Ci pomoże:

dla UDP:

1. Inicjalizacja WinSock'a – WSAStartup (nadawca i odbiorca).
2. Utworzenie gniazda – socket (nadawca i odbiorca).
3. Nadawca – pobranie adresu IP, numeru portu serwera/odbiorcy oraz
komunikatu do wysłania (wszystkie dane podaje użytkownik).
4. Odbiorca – pobranie adresu IP i portu, na których ma nasłuchiwać
serwer/odbiorca (dane podaje użytkownik).
5. Nadawca i odbiorca – ustawienie pól struktury 'sockaddr_in' pobranymi
uprzednio danymi dla serwera/odbiorcy.
6. Nazwanie gniazda – bind (odbiorca).
7. Wysyłka – sendto (nadawca).
8. Odbiór i wyświetlenie odebranych danych – recvfrom (odbiorca).
9. Zamknięcie gniazda – closesocket (nadawca i odbiorca).
10.Zwolnienie WinSock'a – WSACleanup (nadawca i odbiorca).

dla TCP:

1. Inicjalizacja WinSock'a – WSAStartup (nadawca i odbiorca).
2. Utworzenie gniazda – socket (nadawca i odbiorca).
3. Nadawca – pobranie adresu IP, numeru portu serwera/odbiorcy oraz
komunikatu do wysłania (wszystkie dane podaje użytkownik).
4. Odbiorca – pobranie adresu IP i portu, na których ma nasłuchiwać
serwer/odbiorca (dane podaje użytkownik).
5. Nadawca i odbiorca – ustawienie pól struktury 'sockaddr_in' pobranymi
uprzednio danymi dla serwera/odbiorcy.
6. Nazwanie gniazda – bind (odbiorca).
7. Nawiązanie połączenia – connect (nadawca), nasłuch na gnieździe – listen
(odbiorca).
8. Wysyłka – send (nadawca).
9. Akceptacja nawiązanego połączenia – accept (odbiorca).
10.Odbiór i wyświetlenie odebranych danych – recv (odbiorca).
11.Zamknięcie gniazda – closesocket (nadawca i odbiorca).
12.Zwolnienie WinSock'a – WSACleanup (nadawca i odbiorca).

Podobne pytania

0 głosów
0 odpowiedzi 115 wizyt
0 głosów
1 odpowiedź 78 wizyt
pytanie zadane 12 lutego w C i C++ przez Hiskiel Pasjonat (17,120 p.)
0 głosów
2 odpowiedzi 92 wizyt
pytanie zadane 19 maja w C i C++ przez Mamrotek Nowicjusz (180 p.)
Porady nie od parady
Komentarze do pytań nie służą do odpowiadania, od tego jest wydzielona sekcja odpowiedzi. Funkcją komentarzy jest natomiast możliwość uzyskania dodatkowych informacji na temat samego posta.Komentarze

57,547 zapytań

102,554 odpowiedzi

211,521 komentarzy

29,377 pasjonatów

Przeglądających: 313
Pasjonatów: 30 Gości: 283

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...