获取IP地址的问题?

cfan_haifeng cfan_haifeng 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
//这个程序老错,是否是应为我有1394的关系啊,你们运行会搓吗?

using System;

//解决方案资源管理器--引用--添加引用--.NET--System.Management
using System.Management;


//WMI即视窗系统管理方法(Windows Management Instrumentation),存放各种信息的数据库
namespace 使用WMI获取IP
{
class WMIIP
{
[STAThread]
static void Main()
{
//Win32_NetworkAdapterConfiguration是WMI数据库中用来存放网络设备的信息表
ManagementObjectSearcher query=new
ManagementObjectSearcher("SELECT * FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled='TRUE'");

//ManagementObjectCollection对象用来存放查询结果
ManagementObjectCollection queryCollection=query.Get();

foreach(ManagementObject mo in queryCollection)
{
Console.WriteLine("Network Card:{0}",mo["Description"]);
Console.WriteLine("MAC Address:{0}",mo["MACAddress"]);

//addresses, addresses和 defaultgateways 值都是可以包含多个值得数组.
//为了适应这种情况,为了适应这种情况,用户必须把结果分配到一个字符串数组,
//并再一次用foreach语句通过该字符串数组
string[] addresses=(string[])mo["IPAddress"];
string[] subnets=(string[])mo["IPSubnet"];
string[] defaultgateways=(string[])mo["DefaultIPGateway"];


//任何一个接口都可能有多个IP地址
foreach(string ipaddress in addresses)
{
Console.WriteLine("IP Address:{0}",ipaddress);
}

foreach(string subnet in subnets)
{
Console.WriteLine("Subnet Mask:{0}",subnet);
}

foreach(string defaultgateway in defaultgateways)
{
Console.WriteLine("Gateway:{0}",defaultgateway);
}
Console.WriteLine();
}
Console.Read();

}
}
}
...全文

相关推荐

评论 3
收藏 已收藏
分享
返回顶部
cfan_haifeng
C# 111,129 成员 642,538 内容