vb.net入门获取本机IP地址
|
在巧巧读书论坛上看到有网友问在vb.net中如何获取本机IP信息和本机名称,记得在以前的vb6.0中需要用GetComputerName这个API函数才能实现,不知道在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。 源代码网供稿. |


