محتویات سایت
        برچسب های محبوب 








 
   چگونگی تشخیص یک اتصال اینترنتی از طریق برنامه های تحت ویندوز
  یکی از مسایلی که در تالارهای گفتمان بسیار مطرح می شود نحوه تشخیص وجود یک اتصال اینترنتی در برنامه های تحت ویندوز می باشد.
   VB
   ۲۱۳۴۹
    سورس کد
   مرتضی صحراگرد
   ۱۳۸۵/۱۰/۱۱
نسخه قابل چاپ نسخه قابل چاپ

چگونگي تشخيص يک اتصال اينترنتي از طريق برنامه هاي تحت ويندوز :
يکي از مسايلي که در تالارهاي گفتمان بسيار مطرح مي شود نحوه تشخيص وجود يک اتصال اينترنتي در برنامه هاي تحت ويندوز مي باشد.
در اين مقاله قصد دارم نحوه تشخيص يک اتصال اينترنتي را شرح دهم .
در قطعه کد زير تابعي به نام CheckConnection را مي بينيد که يک URL را به عنوان يک پارامتر گرفته و در صورت متصل بودن کاربر به اينترنت ، مقدار True را برمي گرداند و در غير اين صورت مقدار False را برمي گرداند .
به ياد داشته باشيد که بايد فضاي نامي System.Net را در ابتداي برنامه وارد نماييد.


Dim webreq As HttpWebRequest

Dim webresp As HttpWebResponse

'Funtion returns true or false base on the HttpStatusCode

Function CheckConnection(ByVal url As String) As Boolean

Dim strurl As String = url

Dim bConnected As Boolean = False

Try

webreq = WebRequest.Create(strurl)

webresp = webreq.GetResponse

If webresp.StatusCode = HttpStatusCode.OK Then

bConnected = True

Else

bConnected = False

End If

Return bConnected

Catch ex As Exception

bConnected = False

Return bConnected

Finally

webresp = Nothing

End Try

End Function

در فرم برنامه يک TextBox وجود دارد که کاربر مي تواند آدرس اينترنتي مورد نظر را در آن وارد نماييد و با فشار دکمه Connect در صورت متصل بودن به اينترنت ، پنجره سايت مورد نظر باز مي شود.( اين عمل را با استفاده از کلاس  System.Diagnostics.Process.Start انجام مي دهيم  )
در غير اين صورت به کاربر پيامي نشان داده مي شود که آيا مايل است به اينترنت وصل شود يا خير.
در صورتي که کاربر مايل باشد به اينترنت وصل شود پنجره " Network and Dial-Up Connections " را باز مي کنيم.( اين کار را با استفاده از تابع Shell انجام مي دهيم )


Private Sub btnConnect_Click(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles btnConnect.Click

Dim lNg As Integer

Dim urlString As String = TextBox1.Text

Dim isConnected As Boolean = CheckConnection(urlString)

If isConnected Then

System.Diagnostics.Process.Start("iexplore", urlString)

Else

Dim ans As String = MsgBox("Do you want to connect?", _

MsgBoxStyle.YesNo, "No Connected")

If ans = vbYes Then

lNg = Shell("rundll32.exe shell32.dll,Control_RunDLL ncpa.cpl,,0")

Else

MsgBox("Sorry canot connect you chose no...")

End If

End If

End Sub