Bài giảng Lập trình mạng - Chương 4.2: Hướng dẫn Winsock Control với Visual Basic

pdf 16 trang hoanguyen 3280
Bạn đang xem tài liệu "Bài giảng Lập trình mạng - Chương 4.2: Hướng dẫn Winsock Control với Visual Basic", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdfbai_giang_lap_trinh_mang_chuong_4_2_huong_dan_winsock_contro.pdf

Nội dung text: Bài giảng Lập trình mạng - Chương 4.2: Hướng dẫn Winsock Control với Visual Basic

  1. LP TRÌNH M NG H NG D N WINSOCK CONTROL VI VISUAL BASIC 1
  2. Thêm Winsock control vào Project 2
  3. Thêm Winsock control vào Project 3
  4. Xu t hi n bi u t ng Winsock control trên thanh công c 4
  5. Ví d 1: UDPSimpleChat •Gi nh n d li u gi a 2 ng d ng s dng giao th c UDP. •To 2 project: – UDPServer – UDPClient 5
  6. Project prjTCPServer , g m 1 form frmTCPServer b trí các control nh sau: 6
  7. Vi t code cho server Private Sub cmdListen_Click() Winsock1.Close Winsock1.LocalPort = Val(Text1.Text) Winsock1.Listen End Sub Private Sub cmdSend_Click() Winsock1.SendData Text3.Text End Sub Private Sub Form_Load() Winsock1.Protocol = sckTCPProtocol End Sub Private Sub Winsock1_ConnectionRequest(ByVal requestID As Long) Winsock1.Close Winsock1.Accept requestID End Sub Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long) Dim s As String Winsock1.GetData s Text2.Text = s & Chr(13) & Chr(10) & Text2.Text End Sub 7
  8. Project prjTCPClient , g m 1 form frmTCPClient b trí các control nh sau: 8
  9. Vi t code cho Client Private Sub cmdConnect_Click() Winsock1.Close Winsock1.Connect Text1.Text, Val(Text2.Text) End Sub Private Sub cmdSend_Click() Winsock1.SendData Text3.Text End Sub Private Sub Form_Load() Winsock1.Protocol = sckTCPProtocol End Sub Private Sub Winsock1_Connect() Label3.Caption = Str(Winsock1.State) End Sub Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long) Dim s As String Winsock1.GetData s Text4.Text = s & Chr(13) & Chr(10) & Text4.Text End Sub 9
  10. Ví d 1: UDPSimpleChat •Gi nh n d li u gi a 2 ng d ng s dng giao th c UDP. •To 1 project: – UDPChat 10
  11. Project prjUDPChat , g m 1 form frmUDPChat b trí các control nh sau: 11
  12. Vi t code cho ng d ng Private Sub cmdBind_Click() 'Receive via winsock2 Winsock2.LocalPort = Val(Text5.Text) Winsock2.Bind End Sub Private Sub cmdSend_Click() 'Send via winsock1 Winsock1.RemotePort = Val(Text2.Text) Winsock1.RemoteHost = Text1.Text Winsock1.SendData Text3.Text End Sub Private Sub Form_Load() Winsock1.Protocol = sckUDPProtocol Winsock2.Protocol = sckUDPProtocol End Sub Private Sub Winsock2_DataArrival(ByVal bytesTotal As Long) Dim s As String Winsock2.GetData s Text4.Text = s & Chr(13) & Chr(10) & Text4.Text End Sub 12
  13. Dch ng d ng ra file th c thi (EXE) 13
  14. Test ng d ng: ch y 2 process Chú ý c n click vào Bind có th nh n d li u t Port 14
  15. Bài t p th c hành •Ci ti n các ví d Simple có th chat vi nhi u ng i (MultiChat) • Làm l i các bài t p trong ph n Socket/Winsock v i Winsock control • Vi t ch ơ ng trình truy n file ơ n gi n 15
  16. Bài t ập l ớn (Ch ọn m ột trong các bài t ập) 1) Vi t ch ơ ng trình truy n file, có cho phép duy t file, folder c a máy remote: – Ch ơ ng trình client có th yêu c u danh sách các file/folder c a máy remote – Ng i s d ng ch n file, folder trên máy remote t i v hay a lên. (G i ý có th xây d ng giao di n nh NC, m t c a s cho máy local, m t c a s cho máy remote) 2) Vi t ng d ng iu khi n máy tính t xa – cho phép xem thông tin c a máy t xa: h in hành, các process dang ch y, ch p màn hình hi n t i – cho phép ch y ng d ng t xa, shutdown, 3) Vi t ch ơ ng trình h tr tính ti n cho d ch v internet: – cho phép ng i qu n lý bi t c máy nào ang s d ng, và ã s d ng th i gian là bao lâu. 4) Tìm hi u giao th c SMTP, vi t ng d ng g i email 5) Tìm hi u giao th c FTP, vi t ng d ng truy n file v i FTP server. 6) Gi i quy t bài toán b ng nhi u máy tính: – Tìm bài toán n u x lý trên m t máy tính ơ n thì m t nhi u th i gian(VD x lý nh, tính toán ma tr n, ) – Cài t thu t toán cho phép th c hi n trên nhi u máy theo mô hình: • Server phân chia công vi c và g i n các client th c hi n • Client nh n công vi c và th c hi n sau ó tr k t qu v server • Server t ng h p k t qu và hi n th 7) Bài toán c a riêng b n 16