新聞中心
求大神指點(diǎn)vb.net 怎么判斷 網(wǎng)絡(luò)是否連接 和取本機(jī)局域網(wǎng)IP和互聯(lián)網(wǎng)IP
你這段代碼可以獲得該主機(jī)名下的所有ip,每個(gè)ip地址都是有類型簇的,可以區(qū)別本地地址和網(wǎng)絡(luò)地址、ip6地址。

創(chuàng)新互聯(lián)公司專注于嵐皋網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠為您提供嵐皋營銷型網(wǎng)站建設(shè),嵐皋網(wǎng)站制作、嵐皋網(wǎng)頁設(shè)計(jì)、嵐皋網(wǎng)站官網(wǎng)定制、微信小程序服務(wù),打造嵐皋網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供嵐皋網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。
你獲取索引為0的ip,不一定是正確的網(wǎng)絡(luò)地址,它有時(shí)順序在中間,在后面。
應(yīng)該獲取所有ip,再通過ip地址簇類型區(qū)分
判斷連接本身有一個(gè)函數(shù),不過有時(shí)沒聯(lián)網(wǎng)也是真。
可以用ping,ping百度、ping訪問速度快、不經(jīng)常維護(hù)斷線的網(wǎng)絡(luò)主機(jī)。
用vb.net實(shí)現(xiàn)網(wǎng)絡(luò)通信
用 vb.net socket通信
Dim th As Threading.Thread
2 Dim tcpl As System.Net.Sockets.TcpListener
3
4 Private Sub Form1_Load()Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
5 th = New System.Threading.Thread(New System.Threading.ThreadStart(AddressOf MyListen))
6 th.Start()
7 End Sub
8
9 Public Sub SendMessage()Sub SendMessage(ByVal IP As String, ByVal SendMsg As String)
10 Try
11 If IP "" Then
12 Dim tcpc As New System.Net.Sockets.TcpClient(IP, 5656)
13 Dim tcpStream As Net.Sockets.NetworkStream = tcpc.GetStream
14 Dim reqStream As New IO.StreamWriter(tcpStream)
15 reqStream.Write(SendMsg)
16 reqStream.Flush()
17 tcpStream.Close()
18 tcpc.Close()
19 End If
20 Catch ex As Exception
21 MsgBox(ex.Message.ToString)
22 End Try
23 End Sub
24 Private Sub MyListen()Sub MyListen()
25 Try
26 Dim ipAddress As System.Net.IPAddress = System.Net.Dns.Resolve(System.Net.Dns.GetHostName).AddressList(0)
27 tcpl = New System.Net.Sockets.TcpListener(ipAddress, 5656)
28 tcpl.Start()
29 While True
30 Dim s As System.Net.Sockets.Socket = tcpl.AcceptSocket()
31 Dim MyBuffer(1024) As Byte
32 Dim i As Integer
33 i = s.Receive(MyBuffer)
34 If i 0 Then
35 Dim lstrRec As String
36 Dim j As Integer
37 For j = 0 To i - 1
38 TextBox1.Text += Chr(MyBuffer(j)) ","
39 Next
40 End If
41 End While
42 Catch ex As Exception
43 MsgBox(ex.Message.ToString)
44 End Try
45 End Sub
46
47 Private Sub Button1_Click()Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
48 SendMessage("192.168.0.61", TextBox2.Text)
49 End Sub
怎樣用VB.NET進(jìn)行網(wǎng)絡(luò)編程?
都可以,可以用winsock,也可以自己重寫SOCKET套接字.建議你如果工期緊,可以先用WINSOCK.當(dāng)然最好是自己學(xué)用SOCKET套接字.這對未來開發(fā)網(wǎng)絡(luò)通訊是很有幫助的.因?yàn)橛肳INSOCK有個(gè)毛病就是殺毒軟件總會阻止
VB.NET如何判斷電腦是否已連接到網(wǎng)絡(luò)?
Microsoft.VisualBasic.Devices.Network.IsAvailable As Boolean
生成實(shí)例后可以通過此屬性來獲取是否聯(lián)網(wǎng)的值,True代表已聯(lián)網(wǎng),F(xiàn)alse代表沒有聯(lián)網(wǎng)
Microsoft.VisualBasic.Devices.Network.NetworkAvailabilityChanged(ByVal Object, ByVal Microsoft.VisualBasic.Devices.NetworkAvailableEventArgs)
該事件是在電腦斷開/連上互聯(lián)網(wǎng)是引發(fā)的
其中:
e.IsNetworkAvailable
的功能同Microsoft.VisualBasic.Devices.Network.IsAvailable
實(shí)例:
Dim?netListener?As?New?Microsoft.VisualBasic.Devices.Network?'生成實(shí)例
If?netListener.IsAvailable?=?True?Then
MsgBox("已聯(lián)網(wǎng)")
Else
MsgBox("未聯(lián)網(wǎng)")
End?If
NetworkAvailabilityChanged實(shí)例:
WithEvents?netListener?As?New?Microsoft.VisualBasic.Devices.Network?'生成實(shí)例
Private?Sub?OnNetworkChanged(ByVal?Object,?ByVal?Microsoft.VisualBasic.Devices.NetworkAvailableEventArgs)Handles?netListener.NetworkAvailabilityChanged
If?e.IsNetworkAvailable?=?True?Then
MsgBox("已聯(lián)網(wǎng)")
Else
MsgBox("未聯(lián)網(wǎng)")
End?If
End?Sub
vb.net中如何判斷網(wǎng)絡(luò)連接?
新建模塊
Function IsHearOK(ByVal URL As String) As Boolean '判斷網(wǎng)頁是否存在函數(shù)
Dim XMLObject As Object, ReturnType As String
XMLObject = CreateObject("Microsoft.XMLHTTP")
XMLObject.Open("GET", URL, False)
XMLObject.setRequestHeader("CONTENT-TYPE", "application/x-www-form-urlencoded")
XMLObject.setRequestHeader("Range", "bytes=1-255")
Try
XMLObject.Send()
If XMLObject.Status = 200 Or XMLObject.Status = 206 Then
ReturnType = XMLObject.getResponseHeader("CONTENT-TYPE")
If UCase(ReturnType) "TEXT/HTML" Then
IsHearOK = True
Else
IsHearOK = False
End If
Else
IsHearOK = False
End If
Catch
MsgBox("連接異常,請檢查網(wǎng)絡(luò)!", , "提醒")
XMLObject = Nothing
End Try
End Function
調(diào)用 ishearok(url)=true 正常
vb.net 獲取指定網(wǎng)卡的網(wǎng)絡(luò)連接狀態(tài)
.net不能獲得【指定】網(wǎng)卡的信息,給個(gè)思路,先遍歷所有網(wǎng)卡,然后找到你需要的的那個(gè)網(wǎng)卡的信息。
本文題目:vb.net聯(lián)網(wǎng) vbnet tcp
網(wǎng)站地址:http://www.dlmjj.cn/article/hpcses.html


咨詢
建站咨詢
