NEWS

Ping - kiểm tra kết nối tới một địa chỉ website trong VB.Net

Ping - kiểm tra kết nối tới một địa chỉ website trong VB.Net
Đăng bởi: TONA Cody - Lượt xem: 11402 23:01:22, 10/11/2016VB.NET   In bài viết

System.Net.WebResponse
Các lớp WebResponse là trừu tượng lớp cơ sở mà từ đó các lớp học đáp ứng giao thức cụ thể có nguồn gốc. Ứng dụng có thể tham gia vào các giao dịch yêu cầu và đáp ứng một protocol-specific sử dụng trường hợp của lớp  WebResponse trong khi các lớp giao thức cụ thể có nguồn gốc từ WebResponse thực hiện các chi tiết của yêu cầu.
Dịch nguyên văn của MSDN, mà google trans là 99% :D
Nói cho rong dài vậy chứ thực chất WebResponse là 1 phương thức cho phép chúng ta bắt những phản hồi trả về khi ta thực hiện "Ping" tức là kiểm tra máy mình có thể kết nối với trang đích hay không.
Mình mạn phép làm 1 ví dụ nho nhỏ về WebResponse.

Đầu tiên tạo 1 form như hình với 1 text edit dùng để nhập địa chỉ web vào, một button để thực thi lệnh, một label ùng để thể hiện kết quả, và một timer để chạy thời gian thực.

ebResponse-1

Bây giờ bắt đầu viết code cho các sự kiện:
Trước hết bạn tạo một function để xử lý và nhận phản hồi từ địa chỉ web

 

    Private Function IsConnectionAvailable() As Boolean
        If TextEdit1.Text.Length > 0 Then
            Dim url As New System.Uri("http://www." & Trim(TextEdit1.Text))
            Dim req As System.Net.WebRequest
            req = System.Net.WebRequest.Create(url)
            Dim resp As System.Net.WebResponse
            Try
                resp = req.GetResponse()
                resp.Close()
                req = Nothing
                Return True
            Catch ex As Exception
                req = Nothing
                Return False
            End Try
        End If
    End Function

Bây giờ viết hàm xử lý cho timer:
 

Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
        If IsConnectionAvailable() = True Then
            XtraMessageBox.Show("Connected!")
            LabelControl1.ForeColor = Color.Green
            Timer1.Stop()
            'Thread.Sleep(7000)
            'LabelControl1.Text = "Again!"
        Else
            LabelControl1.Text = "Not connected!"
            LabelControl1.ForeColor = Color.Red
        End If
    End Sub

Cuối cùng để timer chạy, trong sự kiện button1 click, ta thực hiện lệnh khởi động timer:
Timer1.Start()

Run ứng dụng...

responsive-2

Nhấn nút Kiểm tra để xem hết quả.

Mọi thắc mắc vui lòng để lại ở comment.

Have fun.. :) 

THÔNG TIN TÁC GIẢ

BÀI VIẾT LIÊN QUAN

Ping - kiểm tra kết nối tới một địa chỉ website trong VB.Net
Đăng bởi: TONA Cody - Lượt xem: 11402 23:01:22, 10/11/2016VB.NET   In bài viết

CÁC BÀI CÙNG CHỦ ĐỀ

Đọc tiếp