代碼演示VB.NET網(wǎng)絡(luò)應(yīng)用之連通檢測(cè)
VB.NET的升級(jí)給我們帶來(lái)了很多好處,它的強(qiáng)大功能在這里也不和大家詳細(xì)說(shuō)了,說(shuō)說(shuō)關(guān)于VB.NET網(wǎng)絡(luò)應(yīng)用吧。隨著Internet的迅猛發(fā)展,VB 6在網(wǎng)絡(luò)方面的應(yīng)用開(kāi)發(fā)也越來(lái)越多。本文介紹筆者在實(shí)際編程開(kāi)發(fā)中總結(jié)的技巧,希望能為進(jìn)行網(wǎng)絡(luò)開(kāi)發(fā)的朋友們提供一點(diǎn)參考。
VB.NET網(wǎng)絡(luò)應(yīng)用連通檢測(cè)
許多應(yīng)用程序常常需要在程序中直接進(jìn)行聯(lián)網(wǎng)操作,以便進(jìn)行一些必要的處理(如在線注冊(cè)和在線幫助等),這就要求我們?cè)诔绦蛑薪⒛承┻B接。很多軟件在不知用戶是否聯(lián)網(wǎng)的情況下就啟動(dòng)瀏覽器查找網(wǎng)址,結(jié)果只能查出一錯(cuò)誤網(wǎng)頁(yè),既浪費(fèi)用戶時(shí)間又沒(méi)有任何效果。如果應(yīng)用程序在查找網(wǎng)頁(yè)之前能自動(dòng)判斷用戶是否已經(jīng)聯(lián)網(wǎng),就會(huì)節(jié)約許多時(shí)間,提高程序運(yùn)行效率。
下面是實(shí)現(xiàn)網(wǎng)絡(luò)連通檢測(cè)的VB 6代碼:
- Private Sub Form_Load()
- If IsConnected = TRUE Then
- MsgBox (“您已經(jīng)連通了Internet!”)
- End If
- If IsConnected = FALSE Then
- MsgBox (“您還沒(méi)有連通 Internet!”)
- End If
- End Sub
- Option Explicit
- /*有關(guān)的API聲明和定義*/
- Public Declare Function RasEnumConnections Lib “RasApi32.dll” Alias “RasEnumConnectionsA” (lpRasCon As Any, lpcb As Long, lpcConnections As Long) As Long
- Public Declare Function RasGetConnectStatus Lib “RasApi32.dll” Alias “RasGetConnectStatusA” (ByVal hRasCon As Long, lpStatus As Any) As Long
- /*常數(shù)和變量的設(shè)定*/
- Public Const RAS95_MaxEntryName = 256
- Public Const RAS95_MaxDeviceType = 16
- Public Const RAS95_MaxDeviceName = 32
- Public Type RASCONN95
- dwSize As Long
- hRasCon As Long
- szEntryName(RAS95_MaxEntryName) As Byte
- szDeviceType(RAS95_MaxDeviceType) As Byte
- szDeviceName(RAS95_MaxDeviceName) As Byte
- End Type
- Public Type RASCONNSTATUS95
- dwSize As Long
- RasConnState As Long
- dwError As Long
- szDeviceType(RAS95_MaxDeviceType) As Byte
- szDeviceName(RAS95_MaxDeviceName) As Byte
- End Type
- /*函數(shù)IsConnected返回連通的狀態(tài),如果為T(mén)rue則表示已連通*/
- Public Function IsConnected() As Boolean
- Dim TRasCon(255) As RASCONN95
- Dim lg As Long
- Dim lpcon As Long
- Dim RetVal As Long
- Dim Tstatus As RASCONNSTATUS95
- TRasCon(0).dwSize = 412
- lg = 256 * TRasCon(0).dwSize
- RetVal = RasEnumConnections(TRasCon(0), lg, lpcon)
- If RetVal <> 0 Then
- MsgBox “錯(cuò)誤”
- Exit Function
- End If
- Tstatus.dwSize = 160
- RetVal = RasGetConnectStatus(TRasCon(0)
- .hRasCon,Tstatus)
- If Tstatus.RasConnState = &H2000 Then
- IsConnected = TRUE
- Else
- IsConnected = FALSE
- End If
- End Function
以上就是一個(gè)關(guān)于VB.NET網(wǎng)絡(luò)應(yīng)用的技巧,以后還會(huì)為大家總結(jié)更多。