Bài 5: Lập trình mạng trên .Net Compact Framework
lượt xem 74
download
Nội dung trình bày: Sử dụng Socket; Sử dụng kết nối UDP; Sử dụng HttpWebRequest; Sử dụng kết nối hồng ngoại
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài 5: Lập trình mạng trên .Net Compact Framework
- Đại học Khoa học Tự nhiên, ĐHQG-HCM Khoa Công Nghệ Thông Tin Bài 5: Lập trình mạng trên .Net Compact Framework ThS. Trần Minh Triết 1
- Tham khảo Microsoft® .NET Compact Framework Kick Start, Erik Rubin, Ronnie Yates(2003), Sams Publishing Chapter 5. Network Connectivity with the .NET Compact Framework 2
- Nội dung Sử dụng Socket Sử dụng kết nối UDP Sử dụng HttpWebRequest Sử dụng kết nối hồng ngoại 3
- Một số nhận xét ban đầu Các port có giá trị dưới 1024 thường được HĐH dành riêng cho các dịch vụ chuẩn Nên chọn port có giá trị từ 2000 đến 60000 Chọn lựa giữa TCP/IP và UDP TCP: đảm bảo “error-free delivery”, chậm hơn UDP UDP: không đảm bảo “error-free delivery”, nhanh hơn TCP 4
- Tạo kết nối tại C lent i Sử dụng địa chỉ IP EndPoi _EndPoi new PEndPoi ntl nt= I nt (PA ddr I ess. se("172. 25. Par 68. 34“) onver . nt 9981) ; ,C tToI 16( ) Sử dụng tên của server (dùng DNS) I ost r l PH ost r =D ns. esol "w w w . ycom put . ") PH Ent y _I Ent y R ve( m er net ; EndPoi _EndPoi new ntl nt= I PEndpoi (_I ost r A ddr nt l PH Ent y. essLi [ ,9981) st 0] ; 5
- Tạo kết nối tại C lent i ty r { Socketl _Socket= new Socket Socket A ddr ( ( essFam iy.nt N et or l I er w k, Socket Type. r St eam ,Pr ocol ot Type. Tcp); l _SocketC onnect l . (_EndPoi )nt ; i l f(_SocketC onnect . ed) { /l / _Socketi now eady o s r t send and ecei dat r ve a } } cat ( ch Socket Excepton i e) { / som et ng * do hi abouti /} t* 6
- Nhận yêu cầu kết nối tại H ost m _lst i enSocket= new Socket A ddr ( essFam iy.nt N et or l I er w k, Socket Type. r St eam ,Pr ocol ot Type.Tcp); m _lst i enSocketB i new PEndPoi (PA ddr . nd( I nt I ess. ny,8758) ; A ) m _lst i enSocketLi en( i ) . st (nt Socket ptonN am e. axC onnectons) O i M i ; m _connectedSocket= _lst m i enSocketA ccept ) . (; i m _connect f( edSocket! nul) = l { i m _connect f( edSocketC onnect . ed) { /Som eone / has connect t us. ed o } } 7
- Truyền tin bằng Socket Truyền dữ liệu: SocketSend . Send B yt ]buf er ( e[ f ) Send B yt ]buf er ( e[ f ,Socket ags Fl socket ags) Fl Send B yt ]buf er nt si ( e[ f ,I 32 ze,Socket ags Fl socket ags) Fl Send B yt ]buf er nt of set ( e[ f ,I 32 f , nt si I 32 ze,Socket ags Fl socket ags) Fl Ví dụ: l _SocketSend l . (_buf er f ,16,Socket ags. one) Fl N ; Truyền tối đa 16 byte dữ liệu trong l _buf er f l _SocketSend l . (_buf er f ,2,6,Socket ags. one) Fl N ; Truyền tối đa 6 byte dữ liệu trong l _buf er từ byte thứ 3 f 8
- Truyền tin bằng Socket l _SocketSend( . Encodi A SC I. et yt "Send e")) ng. IG B es( m ; l _SocketSend( . Encodi U ni ng. code. et yt "Send e")) G B es( m ; l _SocketSend( . Encodi A SC I. et yt C onver . ng. IG B es( tToSt i 2003) ; r ng( )) l _SocketSend( . Encodi A SC I. et yt C onver . ng. IG B es( tToSt i 2. )) r ng( 71) ; 9
- Nhận tin bằng Socket Nhận dữ liệu: SocketR ecei . ve R ecei ( yt ]buf er ve B e[ f ) R ecei ( yt ]buf er ve B e[ f ,Socket ags Fl socket ags) Fl R ecei ( yt ]buf er nt si ve B e[ f ,I 32 ze,Socket ags Fl socket ags) Fl R ecei ( yt ]buf er nt of set ve B e[ f ,I 32 f , I 32 ze,Socket ags nt si Fl socket ags) Fl Ví dụ: l _SocketR ecei (_buf er . ve l f ,16,Socket ags. one) Fl N ; Nhận tối đa 16 byte dữ liệu vào l _buf er f l _SocketR ecei (_buf er . ve l f ,2,6,Socket ags. one) Fl N ; Nhận tối đa 6 byte dữ liệu ghi vào l _buf er từ byte thứ 3 f 10
- Nhận tin bằng Socket st i l SC I Encodi A SC I. et r ng(_B uf er ; r ng _A I= ng. IG St i l f ) st i l SC I Encodi A SC I. et r ng(_B uf er ; r ng _A I= ng. IG St i l f ) i _I eger = nt l nt C onver . nt Encodi A SC I. et r ng(_B uf er ) tToI 32( ng. IG St i l f ); D oubl l oubl = e _D e C onver . tToD oubl Encodi A SC I. et r ng(_D oubl ) e( ng. IG St i l e) ; 11
- Sử dụng kết nối U D P U D P và TC P U D P: connectionless protocol TC P: connection-oriented protocol Sử dụng class U dpC lent i voi C onnect St i host d ( r ng nam e,I 32 t ; nt por ) voi Send( yt ]dgr ,I 32 es) d B e[ am nt byt ; voi R ecei r PEndPoi em ot d ve( efI ntr eEP) ; Ví dụ: l dpC lentC onnect I ddr _U i . (PA ess. se( Par "172. 25. 68. 34") ,9981) ; Send( uf er uf er Lengt w w . ycom put . ",9981) aB f ,aB f . h,"w m er net ; 12
- Sử dụng U dpC lent i IPEndPoi sender P new nt I = I PEndPoi (PA ddr nt I ess. se( Par "192. 168. 200") 0. , C onver . nt 8758) ; tToI 32( ) U dpC lent i l dpC lent= _U i new dpC lent ) U i (; l dpC lentC onnect sender P) _U i . ( I ; f i 0;i
- Sử dụng U dpC lent i I PEndPoi lst nt i ener P new PEndPoi (PA ddr I = I nt I ess. ny,8758) A ; U dpC lent lst i i ener = new dpC lent lst U i (i ener P) I ; f i 0;i
- Sử dụng U dpC lent i U dpC lentudpC lent= i i new dpC lent 5000,A ddr U i ( essFam iy.nt N et or l I er w k udpC lentB egi ecei new syncC alback( ecei i . nR ve( A l R veC alback) l , udpC lent ; i ) 15
- Sử dụng U dpC lent i publc atc d ecei i st i voi R veC alback(A syncR esul ) l I tar { dpC lentu ( dpC lent ar A syncSt e; U i = U i ) . at PEndPoi = I nte new PEndPoi (PA ddr I nt I ess. r B oadcast ; ,0) yt ]r B e[ ecei veB yt = EndR ecei u,r ; es u. ve( efe) r ng ecei st i r veSt i = r ng Encodi A SC I. et r ng( ecei ng. IG St i r veB yt ; es) onsol W r t ne( ecei C e. ieLi "R ved:{ ",r 0} ecei veSt i ; r ng) B egi ecei new syncC alback( ecei u. nR ve( A l R veC alback) ; l ,u) } 16
- Sử dụng U dpC lent i I ddr PA ess r G oupA ddress I ddr = PA ess. r B oadcast ; i r ntG oupPor 5000; t= U dpC lentsender = i new dpC lent ) U i (; I PEndPoi oupEP new PEndPoi ( r ntgr = I nt G oupA ddr ess,G r oupPor ) t; byt ]byt = e[ es Encodi A SC I. et yt "B r ng. IG B es( oadcastM essage") ; sender Send( es,byt Lengt oupEP) . byt es. h,gr ; sender C l . ose( ; ) 17
- Sử dụng H t pW ebR equest t U r _U r new r ( t /w w w . yser . i l i= U i"ht p:/ m ver com "); H t pW ebR equest t l ebR eq _W = ( t pW ebR equest W ebR equestC r e(_U r ) H t ) . eat l i; H t pW ebR esponse t l ebR esponse _W = ( t pW ebR esponse)_W ebR eq. et esponse( ; H t l G R ) St eam _r r l esponseSt eam l ebR esponse. et esponseSt eam ( ; r = _W G R r ) St eam R eader l r _SR eader = new r St eam R eader l esponseSt eam ) (_r r ; / o /D som et ng ih _SR eader hi w t l .For exam pl fyou e,i dow nl oaded a / eb /W page,you coul d / r he TM L /ext actt H code hatcam e n he esponse t i t r and nti pai ton / he een. /t scr 18
- Kết nối bằng I D A tại C lent r i m _I D A C lent= r i new r A C lent ) ID i (; bool l oundA nyD evi = al _f ce f se; i nt M A X_D EVI ES 5; C = / nd ho' outt e o /Fi outw s her t connectw ih.. t . I D A D evi nf ] r ceI o[ l evsA vaiabl = _D l e m _I D A C lentD i r i . scover evi D ces( A X_D EVI ES) M C ; / /Show M essageB ox eli user ever devi w e a t lng y ce see her outt e f each I D A D evi nf _devI o i l evsA vaiabl or (r ceI o l nf n _D l e) { l oundA nyD evi = r _f ce t ue; M essageB ox. Show (_devI o. evi l nf D ceN am e, "D i scover I D A ed r devi ce"); / ow r t connectt t devi /N t y o o he ces,hopi i f s ser ce ng tof er a vi / /nam ed R D A _C H A T_SER VER " "I 19
- Kết nối bằng I D A tại C lent r i ty r { /A ssum e hatfr / t i stdevi i of er ng ser ce hatw e ce s f i a vi t /w ant / r A EndPoi I D ntchatEndPoi new r A EndPoi ( nt= ID nt l evsA vaiabl 0]D evi D ,"I D A _C H A T_SER VER ") _D l e[ . ceI R ; _I D A C lentC onnect chat m r i . ( EndPoi ) nt ; essageB ox. M Show ( onnect t chatser ! eady o "C ed o ver ","R t chat ; ") _C onnect = r m ed t ue; eak; br } cat ( ch Socket Excepton i exc) { } } / _I daC lentcan /m r i now r be ead r r t en o. f om or w it t 20
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Giáo trình Lập trình viên công nghệ .net (Module 4) - Trung tâm tin học ĐH KHTN
122 p | 416 | 124
-
Giáo trình Lập trình viên mã nguồn mở PHP (Module 3) - Trung tâm tin học ĐH KHTN
134 p | 266 | 86
-
Lập trình ứng dụng web với ASP.NET
0 p | 218 | 56
-
Giáo trình Lập trình iSO (Module 2) - Trung tâm tin học ĐH KHTN
143 p | 159 | 52
-
Bài giảng Ngôn ngữ lập trình C++: Chương 5 - Trần Minh Châu
77 p | 152 | 34
-
Bài giảng Lập trình C nâng cao: Chương 5 - Trần Minh Thái
22 p | 144 | 18
-
Bài giảng Nhập môn mạng máy tính: Chương 5 - Ninh Xuân Hương
40 p | 145 | 18
-
Bài giảng Phương pháp lập trình: Chương 5 - GV. Từ Thị Xuân Hiền
37 p | 114 | 12
-
Lập trình iSO (Module 2) - TTTH ĐH KHTN
143 p | 87 | 11
-
Bài giảng môn Lập trình hướng đối tượng - Chương 5: Tập hợp trên Java
40 p | 85 | 7
-
Bài giảng Nhập môn lập trình: Chương 5 - Trần Minh Thái
52 p | 39 | 7
-
Bài giảng Lập trình hướng đối tượng (Object Oriented Programming) - Chương 5: Tập hợp trên Java
40 p | 81 | 5
-
Bài giảng Kỹ thuật lập trình cơ bản: Chương 5 - ThS. Phạm Đào Minh Vũ
30 p | 59 | 4
-
Bài giảng Lập trình nâng cao: Bài 4+5+6 - Trương Xuân Nam
25 p | 34 | 4
-
Bài giảng Kỹ thuật lập trình C/C++ - Chương 5: Mảng một chiều
30 p | 32 | 4
-
Bài giảng Ngôn ngữ lập trình C: Chương 5 - TS. Nguyễn Thị Hiền
31 p | 42 | 3
-
Bài giảng Lập trình hướng đối tượng: Chương 5 - Châu Thị Bảo Hà
58 p | 57 | 2
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn