Tạo ứng dụng đơn giản “hello world”

Một phần của tài liệu Giáo trình lập trình mạng (Trang 40 - 42)

Mô hình Client-Server sử dụng Socket ở chế độ không nối kết (UDP)

2.1. Viết dưới dạng đơn giản UDP client

Yêu cầu: Viết chương trình phía client cho phép gởi một thông điệp đến máy chủ bất kỳ.

Hướng dẫn: Mở Visual Studio .NET, tạo một Project mới, chọn Visual C# projects, và sau đó chọn Windows Application. Đặt tên là “UDP Client” và nhấn OK.

Thiết kế form cho chương trình như hình sau. Đặt tên cho nút button là button1 và hộp văn bản textbox là tbHost.

Hình 3.4 Giao diện UDP Client Kích chọn nút button và gõ đoạn lệnh sau:

private void button1_Click(object sender, System.EventArgs e) {

UdpClient udpClient = new UdpClient(); udpClient.Connect(tbHost.Text, 8080);

Byte[] sendBytes = Encoding.ASCII.GetBytes("Hello World?"); udpClient.Send(sendBytes, sendBytes.Length);

}

Cần bổ sung các namespace sau vào trong chương trình using System.Net;

using System.Net.Sockets; using System.Text;

using System.IO;

Nhấn F5 để thực thi chương trình, ta có kết quả như hình 3.5

2.2. Viết dưới dạng đơn giản UDP server

Yêu cầu: Viết chương trình phía server để nhận và hiển thị thông điệp được gởi tới từ chương trình UDP client ở trên.

Hình 3.5 Giao diện UDP Server Đặt tên cho list box là lbConnections.

Ở đây, chúng ta bắt đầu xây dựng hai luồng (thread) cho chương trình. Đầu tiên là luồng quản lý dữ liệu được gởi đến, mã nguồn chương trình như sau:

public void serverThread() {

UdpClient udpClient = new UdpClient(8080); while(true)

{

IPEndPoint RemoteIpEndPoint = new IPEndPoint(IPAddress.Any,0);

Byte[] receiveBytes = udpClient.Receive(ref RemoteIpEndPoint); string returnData = Encoding.ASCII.GetString(receiveBytes); lbConnections.Items.Add(RemoteIpEndPoint.Address.ToString()

+ ":" + returnData.ToString() );

} }

Viết code cho sự kiện Form load

private void Form1_Load(object sender, System.EventArgs e){ Thread thdUDPServer = new

Thread(new ThreadStart(serverThread)); thdUDPServer.Start();

}

Thực thi chương trình: Để kiểm tra kết quả của chương trình, cài đặt hai chương trình UDP client và UDP server trên hai máy khác nhau có kết nối mạng. Trên chương trình UDP client nhập vào địa chỉ IP của server. Sau khi bấm nút gởi, kết quả sẽ được hiển thị trên chương trình UDP server.

Một phần của tài liệu Giáo trình lập trình mạng (Trang 40 - 42)

Tải bản đầy đủ (PDF)

(111 trang)