vb.net获取IP地址

来源:百度文库 编辑:神马文学网 时间:2024/04/19 20:37:25

vb.net入门——获取本机IP地址

在vb.net中如何获取本机IP信息和本机名称,在vb.net中该怎么实现它。

在MSDN中搜索了良久,终于发现了解决的办法:使用Dns类可以获取本机IP列表和主机名称。

Dns 类,是一个静态类,提供简单的域名解析功能。Dns方法总是以IPHostEntry对象的形式返回信息.它从 Internet 域名系统 (DNS) 检索关于特定主机的信息。它属于System.Net 命令空间

其最常用的几个方法如下:

获取当前电脑名:System.Net.Dns.GetHostName()

根据电脑名取出全部IP地址:System.Net.Dns.Resolve(电脑名).AddressList 或者 System.Net.Dns.GetHostByName(电脑名).AddressList根据IP地址取出电脑名:System.Net.Dns.Resolve(IP地址).HostName 下面我们就用一个实例来看如何获取本机的ip地址,并获得我们的主机名称。

首先建立一个新的Windows项目,在Form1窗体上拖放两个Label 控件,两个TextBox 控件,TextBox2控件的Multiline 属性设置为True,Label控件的Text属性设置可以参看下图一所示的窗体界面:

 

在Form_Load事件中加入如下代码:

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

Dim Address() As System.Net.IPAddress

Dim i As Integer

Address = System.Net.Dns.GetHostByName(System.Net.Dns.GetHostName()).AddressList

TextBox1.Text = System.Net.Dns.GetHostName().ToString()

For i = 0 To UBound(Address)

TextBox2.Text = TextBox2.Text & Address(i).ToString() & Chr(13) + Chr(10)

Next

End Sub

运行效果如下图二所示:

几句很简单的代码就实现了以前需要API函数才能实现的目的,是不是很方便呢。需要注意的是,我们获取的是主机的IP列表,所以在我们的机子上会出现两个IP结果,一个是内网IP,一个是拨号上网的外网IP。