C_Tworzenie_aplikacji_sieciowych_101_gotowych_projektow_cshtas.pdf
(
270 KB
)
Pobierz
C#. Tworzenie aplikacji sieciowych. 101 gotowych projektów
IDZ DO
PRZYK£ADOW
Y ROZDZIA£
C#. Tworzenie aplikacji
SPIS TREœCI
sieciowych. 101 gotowych
projektów
KATALOG KSI¥¯EK
KATALOG ONLINE
Autor: S³awomir Or³owski
ISBN: 83-246-0572-X
Format: B5, stron: 264
ZAMÓW DRUKOWANY KATALOG
TWÓJ KOSZYK
DODAJ DO KOSZYKA
Stwórz w³asne aplikacje sieciowe
Komunikacja sieciowa jest jednym z najwa¿niejszych elementów wspó³czesnych
aplikacji. Coraz wiêcej narzêdzi wykorzystuje zasoby internetu, umo¿liwia pracê
grupow¹ lub ³¹czy siê z sieci¹ w innym celu, np. aktywacji lub rejestracji. Stosowane
obecnie platformy programistyczne umo¿liwiaj¹ stosunkowo ³atw¹ implementacjê
mechanizmów sieciowych, a zyskuj¹cy coraz wiêksz¹ popularnoœæ jêzyk C# wydaje siê
stworzony do tego typu zastosowañ. Jêzyk ten, oparty na obiektach i komponentach,
jest prosty do opanowania. Za jego pomoc¹ mo¿na tworzyæ nie tylko aplikacje dla
„du¿ych” komputerów, ale tak¿e dla platformy PocketPC.
Ksi¹¿ka „C#. Tworzenie aplikacji sieciowych. 101 gotowych rozwi¹zañ” to zbiór
przyk³adów ilustruj¹cych sposoby implementacji mechanizmów komunikacji sieciowej
w aplikacjach tworzonych w jêzyku C#. Czytaj¹c j¹, poznasz zasady korzystania
z protoko³ów sieciowych ICMP, HTTP i FTP, tworzenia programów s³u¿¹cych do analizy
ruchu w sieci, przegl¹dania stron WWW i pobierania plików z serwerów. Nauczysz siê
korzystaæ z technologii ADO.NET i ASP.NET do pisania aplikacji internetowych
i komunikacji z bazami danych. Przeczytasz tak¿e o przetwarzaniu plików XML
oraz tworzeniu i wykorzystywaniu us³ug sieciowych.
œrodowiska programistyczne Visual C# 2005 Express Edition oraz
Visual Web Developer 2005 Express Edition
Protoko³y sieciowe
Analiza po³¹czeñ sieciowych
Edytor stron WWW
Przesy³anie plików za pomoc¹ FTP
Komunikatory i czaty
Tworzenie aplikacji internetowych
Us³ugi sieciowe
CENNIK I INFORMACJE
ZAMÓW INFORMACJE
ONOWOœCIACH
ZAMÓW CENNIK
CZYTELNIA
FRAGMENTY KSI¥¯EK ONLINE
Wydawnictwo Helion
ul. Koœciuszki 1c
44-100 Gliwice
tel. 032 230 98 63
e-mail: helion@helion.pl
Wstęp .............................................................................................. 7
Rozdział 1. Język C# i platforma .NET ................................................................. 9
Technologia .NET. Krótki wstęp ....................................................................................... 9
Elementy języka C# i programowanie zorientowane obiektowo .................................... 10
Przestrzenie nazw ...................................................................................................... 13
Kolekcje .................................................................................................................... 14
Zdarzenia i metody zdarzeniowe ............................................................................... 15
Delegacje ................................................................................................................... 15
Wyjątki ...................................................................................................................... 15
Rozdział 2. Visual C# 2005 Express Edition. Opis środowiska ........................... 17
Projekt 1. Budujemy interfejs pierwszej aplikacji ........................................................... 18
Projekt 2. Poznajemy pliki projektu pierwszej aplikacji ................................................. 21
Projekt 3. Interakcja aplikacji z użytkownikiem. Metody zdarzeniowe .......................... 25
Rozdział 3. Visual Web Developer 2005 Express Edition. Opis środowiska ......... 29
Projekt 4. Pierwsza strona ASP.NET. Tworzymy interfejs ............................................. 29
Projekt 5. Pierwsza strona ASP .NET. Poznajemy pliki projektu ................................... 33
Projekt 6. Pierwsza strona ASP.NET. Metody zdarzeniowe ........................................... 37
Rozdział 4. Programowanie sieciowe ................................................................ 39
Sieci komputerowe .......................................................................................................... 39
Protokoły TCP i UDP ...................................................................................................... 42
Protokół IP i adresy MAC ............................................................................................... 44
Programowanie klient-serwer i peer-to-peer ................................................................... 45
Popularne protokoły sieciowe ......................................................................................... 46
Protokół ICMP .......................................................................................................... 46
Protokół HTTP .......................................................................................................... 47
Protokół FTP ............................................................................................................. 47
Rozdział 5. Aplikacje TCP i UDP ....................................................................... 49
Projekt 7. Połączenie TCP. Klient ................................................................................... 49
Projekt 8. Połączenie TCP. Serwer .................................................................................. 52
Projekt 9. Odczytanie adresu IP przyłączonego hosta ..................................................... 55
Projekt 10. Połączenie UDP. Klient ................................................................................ 56
Projekt 11. Połączenie UDP. Serwer ............................................................................... 58
Projekt 12. Prosty skaner otwartych portów .................................................................... 59
Projekt 13. Sprawdzenie adresu IP naszego komputera .................................................. 61
4
C#. Tworzenie aplikacji sieciowych. 101 gotowych projektów
Projekt 14. Komplet informacji na temat połączeń sieciowych ...................................... 63
Projekt 15. Ping ...............................................................................................................65
Projekt 16. Ping. Przeciwdziałanie zablokowaniu interfejsu .......................................... 69
Projekt 17. NetDetect. Sprawdzanie dostępnych komputerów w sieci ........................... 70
Projekt 18. Traceroute. Śledzenie drogi pakietu ICMP ................................................... 72
Projekt 19. Traceroute. Zatrzymanie wywołania asynchronicznego ............................... 76
Projekt 20. Protokół HTTP. Sprawdzanie dostępnych uaktualnień ................................ 76
Projekt 21. Pobieranie pliku z użyciem protokołu HTTP ............................................... 77
Projekt 22. Pobranie źródła strony z serwera WWW ...................................................... 79
Projekt 23. Przeglądarka WWW ..................................................................................... 80
Projekt 24. Edytor HTML. Budowanie interfejsu ........................................................... 83
Projekt 25. Edytor HTML. Obsługa plików tekstowych ................................................. 84
Projekt 26. Edytor HTML. Współpraca ze schowkiem ................................................... 86
Projekt 27. Edytor HTML. Wprowadzanie tagów .......................................................... 87
Projekt 28. Edytor HTML. Podgląd bieżącej strony ....................................................... 90
Projekt 29. Wysyłanie wiadomości e-mail bez uwierzytelnienia .................................... 91
Projekt 30. Wysyłanie sformatowanej wiadomości e-mail z załącznikami .................... 94
Projekt 31. Wysyłanie poczty za pomocą serwera wymagającego uwierzytelnienia ...... 97
Projekt 32. Masowe wysyłanie wiadomości e-mail ........................................................ 98
Projekt 33. Klient FTP. Interfejs aplikacji ..................................................................... 102
Projekt 34. Klient FTP. Definiowanie pól i własności klasy FTPClient ....................... 103
Projekt 35. Klient FTP. Listowanie katalogów serwera FTP ........................................ 107
Projekt 36. Klient FTP. Zmiana katalogu ...................................................................... 110
Projekt 37. Klient FTP. Metoda pobierająca plik asynchronicznie ............................... 112
Projekt 38. Klient FTP. Wywołanie metody pobierającej plik asynchronicznie ........... 115
Projekt 39. Klient FTP. Metoda wysyłająca plik asynchronicznie ................................ 117
Projekt 40. Klient FTP. Wywołanie metody wysyłającej plik asynchronicznie ........... 119
Projekt 41. Klient FTP. Kasowanie pliku ...................................................................... 121
Projekt 42. Menedżer pobierania plików w tle. Budowa interfejsu .............................. 122
Projekt 43. Menedżer pobierania plików w tle. Pobieranie pliku ................................. 124
Projekt 44. Menedżer pobierania plików w tle. Przerwanie pobierania pliku ............... 126
Projekt 45. Serwer Uśmiechu. Budowa interfejsu ......................................................... 127
Projekt 46. Serwer Uśmiechu. Lista kontaktów ............................................................ 129
Projekt 47. Serwer Uśmiechu. Wysyłanie danych do wielu odbiorców ....................... 132
Projekt 48. Klient Uśmiechu. Umieszczenie ikony w zasobniku systemowym ............ 133
Projekt 49. Klient Uśmiechu. Oczekiwanie na połączenie w osobnym wątku .............. 136
Projekt 50. Klient Uśmiechu. Bezpieczne odwoływanie się
do własności kontrolek formy z poziomu innego wątku ............................................ 138
Projekt 51. Komunikator. Serwer. Budowa interfejsu ................................................... 139
Projekt 52. Komunikator. Serwer. Bezpieczne odwoływanie się
do własności kontrolek formy z poziomu innego wątku ............................................ 142
Projekt 53. Komunikator. Serwer. Obsługa rozmowy ................................................... 143
Projekt 54. Komunikator. Klient ................................................................................... 148
Projekt 55. Zdalny screenshot. Klient. Zrzut ekranu ..................................................... 150
Projekt 56. Zdalny screenshot. Klient ........................................................................... 151
Projekt 57. Klient. Wysyłanie informacji o dostępności klienta ................................... 153
Projekt 58. Serwer screenshot. Budowa interfejsu ........................................................ 154
Projekt 59. Serwer screenshot. Bezpieczne odwoływanie się
do własności kontrolek formy z poziomu innego wątku ............................................ 155
Projekt 60. Serwer screenshot. Lista aktywnych klientów ............................................ 156
Projekt 61. Serwer screenshot. Pobranie zrzutu ekranu ................................................ 157
Spis treści
5
Projekt 62. Serwer. Czat. Budowanie interfejsu ............................................................ 159
Projekt 63. Serwer Czat. Bezpieczne odwoływanie się
do własności kontrolek formy z poziomu innego wątku ............................................ 160
Projekt 64. Serwer Czat. Klasa formy oraz pętla główna programu ............................. 161
Projekt 65. Serwer Czat. Obsługa wątków związanych z klientami ............................. 165
Projekt 66. Serwer Czat. Rozłączenie klienta ................................................................ 167
Projekt 67. Czat. Klient ................................................................................................. 167
Rozdział 6. Remoting ..................................................................................... 173
Projekt 68. Serwer HTTP .............................................................................................. 174
Projekt 69. Klient HTTP ................................................................................................ 177
Projekt 70. Serwer TCP ................................................................................................. 178
Projekt 71. Klient TCP .................................................................................................. 180
Projekt 72. Serwer TCP. Plik konfiguracyjny ............................................................... 181
Projekt 73. Klient TCP. Plik konfiguracyjny ................................................................ 183
Projekt 74. Czat. Klasa serwera ..................................................................................... 184
Projekt 75. Czat. Serwer ................................................................................................ 186
Projekt 76. Czat. Klient ................................................................................................. 187
Rozdział 7. ASP.NET i ADO.NET ...................................................................... 191
Projekt 77. Pozycjonowanie kontrolek na stronie. Pozycja względna .......................... 192
Projekt 78. Pozycjonowanie kontrolek na stronie. Pozycja bezwzględna ..................... 196
Projekt 79. Ping ............................................................................................................. 197
Projekt 80. Wysyłanie wiadomości e-mail .................................................................... 198
Projekt 81. Pobieranie plików na serwer ....................................................................... 200
Projekt 82. Wysyłanie wiadomości e-mail z załącznikami ........................................... 201
Projekt 83. Księga gości. Współpraca z plikiem XML ................................................. 202
Projekt 84. Księga gości. Wyświetlanie zawartości pliku XML ................................... 206
Projekt 85. Księga gości. Sprawdzanie poprawności wpisywanych danych ................ 208
Projekt 86. Księga gości. Liczba gości online ............................................................... 210
Projekt 87. Wielojęzyczny serwis internetowy. Zasoby lokalne ................................... 212
Projekt 88. Wielojęzyczny serwis internetowy. Zasoby globalne ................................. 217
Projekt 89. Wielojęzyczny serwis internetowy. Wybór języka przez użytkownika ..... 219
Projekt 90. Identyfikacja użytkowników ....................................................................... 221
Projekt 91. Rejestrowanie nowych użytkowników ....................................................... 225
Projekt 92. Identyfikacja użytkowników II ................................................................... 226
Projekt 93. Baza książek. Stworzenie bazy danych ....................................................... 227
Projekt 94. Baza książek. Przyłączenie się do bazy danych .......................................... 230
Projekt 95. Baza książek. Prezentacja danych ............................................................... 231
Rozdział 8. Web Services ............................................................................... 235
Projekt 96. Pierwsza usługa sieciowa ............................................................................ 236
Projekt 97. Korzystanie z usługi sieciowej .................................................................... 239
Projekt 98. Usługa Google Web API. Rejestracja usługi .............................................. 240
Projekt 99. Usługa Google Web API. Klient ................................................................. 242
Projekt 100. Usługa Google Web API. Klient. Podpowiedź ......................................... 245
Projekt 101. Usługa Google Web API. Klient. Zapisywanie kopii stron ...................... 247
Skorowidz .................................................................................... 249
Rozdział 5.
Rozdział ten stanowi główną część całej książki. Opisane zostały w nim podstawy
programowania aplikacji sieciowych używających protokołów TCP i UDP dla platformy
.NET. Bez zbytnich uogólnień oraz wywodów teoretycznych zamieszczone są tu prak-
tyczne rozwiązania, jakie stosuje się w programowaniu. Problemy, z jakimi przyjdzie
nam się zmierzyć, mają różne stopnie trudności. Począwszy od ustanowienia połączenia
TCP po programowanie serwera współbieżnego. Przedstawiony jest tutaj również język
C#: jego składnia i sposób użycia. Wybór projektów jest oczywiście dosyć subiektywny
i opiera się na problemach, z jakim spotkał się autor podczas pracy nad konkretnymi
projektami. Niemniej jednak stanowić powinien dobry przegląd metod oraz tworzyć
solidne podstawy do dalszych, samodzielnych studiów.
Projekt 7. Połączenie TCP. Klient
Naszym pierwszym projektem będzie prosta aplikacja nawiązująca połączenie TCP ze
wskazanym komputerem w sieci. Po ustanowieniu połączenia będzie ono zamykane.
Na początek nie będziemy przesyłać żadnych dodatkowych informacji pomiędzy klien-
tem i serwerem. W tym celu użyjemy klasy
TcpClient
z przestrzeni nazw
System.Net.
Socket
. Sam protokół TCP opisany został w rozdziale 4.
1.
Z menu
File
wybieramy pozycję
New Project…
.
2.
W oknie wyboru projektu zaznaczamy ikonę
Windows Application
.
3.
W polu
Name
wpisujemy nazwę
PoloczenieTCPKlient
.
4.
W widoku projektu do formy dodajemy kontrolkę
textBox1
z okna
Toolbox
.
W to pole użytkownik będzie mógł wpisywać adres serwera, do którego
będzie chciał się przyłączyć.
5.
Na formę wrzucamy kontrolkę
numericUpDown1
. Będzie ona przechowywać
numer portu, na którym ma nastąpić połączenie.
6.
Własność
Maximum
kontrolki
numericUpDown1
ustawiamy na
655353
. Jest to
numer najwyższego portu.
Plik z chomika:
SacrA
Inne pliki z tego folderu:
C_2005_Warsztat_programisty_cshwar.pdf
(439 KB)
C_3_0_Leksykon_kieszonkowy_Wydanie_II_cshlk2.pdf
(301 KB)
C_3_0_i_NET_3_5_Technologia_LINQ_cshtec.pdf
(735 KB)
C_3_0_dla_NET_3_5_Ksiega_eksperta_csh3ke.pdf
(378 KB)
ASP_NET_4_z_wykorzystaniem_C_i_VB_Zaawansowane_programowanie_asp4cv.pdf
(1028 KB)
Inne foldery tego chomika:
! .net c#
! .net c#(1)
#Visual Studio
c c++
C#
Zgłoś jeśli
naruszono regulamin