vb.net获取lp6 vbnet获取电脑信息

vb.net如何获取IP地址?做exe程序获取本机IP地址用
System.Net.Dns.GetHostByName(System.Net.Dns.GetHostName()).AddressList
做web程序获取客户端的IP地址用
HttpContext.Current.Request.ServerVariables("REMOTE_ADDR"])
VB.NET2010 怎么获取IP1.获取当前电脑名vb.net获取lp6:System.Net.Dns.GetHostName()
2.根据电脑名取出全部IP地址vb.net获取lp6:System.Net.Dns.Resolve(电脑名).AddressList
或者 System.Net.Dns.GetHostByName(电脑名).AddressList
3.根据IP地址取出电脑名vb.net获取lp6:System.Net.Dns.Resolve(IP地址).HostName
用vb.net取得IP重复问题(如何判断是IPv4还是IPv6)这儿有一个C#vb.net获取lp6的参考
我给改写成了VB.net 看看vb.net获取lp6你能用上不?
Imports System.Diagnostics
Imports System.Text.RegularExpressions
Module mdlIpDns
Public Function RunCMD(ByVal FileName As String, ByVal Arguments As String, ByVal RecordLog As Boolean) As String
REM 运行一个控制台程序并返回其输出参数
Try
If RecordLog = True Then Trace.WriteLine(FileName" "Arguments)
Dim myProc As Process = New Process
myProc.StartInfo.FileName = FileName
myProc.StartInfo.CreateNoWindow = True
myProc.StartInfo.Arguments = Arguments
myProc.StartInfo.RedirectStandardOutput = True
myProc.StartInfo.UseShellExecute = False
myProc.Start()
Dim myStreamReader As System.IO.StreamReader = New System.IO.StreamReader(myProc.StandardOutput.BaseStream, System.Text.Encoding.Default)
【vb.net获取lp6 vbnet获取电脑信息】Dim myText As String = myStreamReader.ReadToEnd
myStreamReader.Close()
If RecordLog = True Then Trace.WriteLine(myText)
If Not myProc.HasExited Then myProc.Kill()
Return myText
Catch ex As Exception
Trace.WriteLine(ex.ToString)
Return vbNull
End Try
End Function
Public Function GetAllIp() As String
REM 获取本机全部网卡的IP地址
GetAllIp = ""
Dim Address() As System.Net.IPAddress
Dim i As Integer
Address = System.Net.Dns.GetHostEntry(System.Net.Dns.GetHostName()).AddressList
For i = 0 To UBound(Address)
GetAllIp = GetAllIp(Chr(13)Address(i).ToString())
Next
End Function
Public Function GetPrimaryDNS() As String
REM 获取本机主DNS
GetPrimaryDNS = ""
Dim m As System.Text.RegularExpressions.Match
Dim myResult As String = RunCMD("nslookup", "", True) '需要RunCMD.mdl
m = Regex.Match(myResult, "\d \.\d \.\d \.\d ")
If m.Success Then
Return m.Value
Else
Return vbNull
End If
End Function
Public Function GetLocalIP() As String
REM 获取本机正在使用的IPv4地址
REM 1.一个电脑有多个网卡,有线的、无线的、还有VMare虚拟的两个网卡 。
REM 2.就算只有一个网卡,但是该网卡配置了N个IP地址.其中还包括IPv6地址 。
REM 3.下面通过查询本机路由表,获取访问默认网关时使用的网卡IP 。
Dim m As System.Text.RegularExpressions.Match
Dim myResult As String = RunCMD("route", "print", True)'需要RunCMD.mdl
m = Regex.Match(myResult, "0.0.0.0\s 0.0.0.0\s (\d .\d .\d .\d )\s (\d .\d .\d .\d )")
If m.Success Then
Return m.Groups(2).Value
Else
Try
Dim myTcpClient As System.Net.Sockets.TcpClient = New System.Net.Sockets.TcpClient
myTcpClient.Connect("", 80) '连接百度判断IP
Dim myIpPoint As System.Net.IPEndPoint = myTcpClient.Client.LocalEndPoint
Dim myIp As String = myIpPoint.Address.ToString
myTcpClient.Close()
Return myIp
Catch ex As Exception
Return vbNull
End Try
End If
End Function
End Module
vb.net 获取局域网计算机的当前用户名和计算机型号等信息Private Declare Function GetComputerName Lib "kernel32" Alias "GetComputerNameA" (ByVal lpBuffer As String, nSize As Long) As Long
Private Declare Function GetUserName Lib "advapi32.dll" Alias "GetUserNameA" (ByVal lpBuffer As String, nSize As Long) As Long
Private Sub GetName()
Dim sJM As String
Dim sMC As String
Dim sIP As String
Dim s As String
s = String(128, Chr(0))
GetComputerName s, Len(s)
s = UCase(Left(s, InStr(1, s, Chr(0)) - 1))
sJM = s'计算机名称
s = String(128, Chr(0))
GetUserName s, Len(s)
s = UCase(Left(s, InStr(1, s, Chr(0)) - 1))
sMC = s‘当前用户名称
End Sub
'用这种方法在远程获得再发回本机就可以吧
'取计算机型号暂时不会
求大神指点vb.net 怎么判断 网络是否连接 和取本机局域网IP和互联网IP你这段代码可以获得该主机名下的所有ip,每个ip地址都是有类型簇的,可以区别本地地址和网络地址、ip6地址 。
你获取索引为0的ip,不一定是正确的网络地址 , 它有时顺序在中间,在后面 。
应该获取所有ip,再通过ip地址簇类型区分
判断连接本身有一个函数 , 不过有时没联网也是真 。
可以用ping,ping百度、ping访问速度快、不经常维护断线的网络主机 。
关于vb.net获取lp6和vbnet获取电脑信息的介绍到此就结束了 , 不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站 。

    推荐阅读