C# 获取硬件信息 CPU、MAC等
2010-08-11 09:46
459 查看
using System.Management;
//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, subnets和 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();
}
有关Win32_NetworkAdapterConfiguration详细类信息可参考MSDN:http://msdn.microsoft.com/en-us/library/aa394217(VS.85).aspx
Console.WriteLine("*********************************/r/n");
ManagementObjectSearcher searcher = new ManagementObjectSearcher("SELECT * FROM Win32_Share");
foreach (ManagementObject share in searcher.Get())
{
Console.WriteLine("Share:{0}", share["Name"]);
}
有关Win32_Share详细类信息可参考MSDN:http://msdn.microsoft.com/en-us/library/aa394435(VS.85).aspx
//Get CPU ID
searcher = new ManagementObjectSearcher("SELECT * FROM Win32_Processor");
foreach (ManagementObject share in searcher.Get())
{
Console.WriteLine("CPU ID:{0}", share["ProcessorId"]);
}
有关Win32_Processor详细类信息可参考MSDN:http://msdn.microsoft.com/en-us/library/aa394373(VS.85).aspx
//Get the First Hard Disk ID
searcher = new ManagementObjectSearcher("SELECT * FROM Win32_DiskDrive");
foreach (ManagementObject share in searcher.Get())
{
Console.WriteLine("First Hard Disk ID:{0}", share["PNPDeviceID"]);
}
有关Win32_DiskDrive详细类信息可参考MSDN:http://msdn.microsoft.com/en-us/library/aa394132(VS.85).aspx
原文地址:http://hi.baidu.com/ylwguilin/blog/item/cb453c17d494de4321a4e9e4.html
//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, subnets和 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();
}
有关Win32_NetworkAdapterConfiguration详细类信息可参考MSDN:http://msdn.microsoft.com/en-us/library/aa394217(VS.85).aspx
Console.WriteLine("*********************************/r/n");
ManagementObjectSearcher searcher = new ManagementObjectSearcher("SELECT * FROM Win32_Share");
foreach (ManagementObject share in searcher.Get())
{
Console.WriteLine("Share:{0}", share["Name"]);
}
有关Win32_Share详细类信息可参考MSDN:http://msdn.microsoft.com/en-us/library/aa394435(VS.85).aspx
//Get CPU ID
searcher = new ManagementObjectSearcher("SELECT * FROM Win32_Processor");
foreach (ManagementObject share in searcher.Get())
{
Console.WriteLine("CPU ID:{0}", share["ProcessorId"]);
}
有关Win32_Processor详细类信息可参考MSDN:http://msdn.microsoft.com/en-us/library/aa394373(VS.85).aspx
//Get the First Hard Disk ID
searcher = new ManagementObjectSearcher("SELECT * FROM Win32_DiskDrive");
foreach (ManagementObject share in searcher.Get())
{
Console.WriteLine("First Hard Disk ID:{0}", share["PNPDeviceID"]);
}
有关Win32_DiskDrive详细类信息可参考MSDN:http://msdn.microsoft.com/en-us/library/aa394132(VS.85).aspx
原文地址:http://hi.baidu.com/ylwguilin/blog/item/cb453c17d494de4321a4e9e4.html
相关文章推荐
- c# 获取机器硬件信息 (硬盘,cpu,内存等)
- c#(asp.net)获取机器信息(IP)(MAC)(机器名)(CPU编号)(主硬盘编号)
- 获取主机的硬件信息,CPU的ID,MAC,以及硬盘的ID
- C#获取硬件信息(CPU序列号,网卡地址...)
- C#获取计算机硬件信息(CPU,网卡,硬盘,内存等)
- c# WMI获取机器硬件信息(硬盘,cpu,内存等)
- C#获取CPU网卡等硬件信息
- C# 获取 Mac 地址,主板信息,cpu 序列号, 磁盘卷标
- WINCE7.0 获取CPU,MEMORY等硬件和系统信息
- ASP获取客户端硬件信息(CPU、硬盘、主板、mac地址等)
- c#中获取cpu序列号,硬盘id,网卡mac地址
- C#获取CPU占用率、内存占用、磁盘占用、进程信息
- C++ 硬件信息 获取CPU序列号
- 【小功能2】android获取手机信息(号码,内存,CPU,分辨率,MAC,IP,SD卡,IMEI,经纬度,信号强度等等)
- C# 获取计算机的硬件信息的方法
- C#获取电脑的唯一标示UUID 非CPU型号 mac
- C#获取机器码的方法详解(机器名,CPU编号,硬盘编号,网卡mac等)
- WebService获取服务端硬件信息和客户端IP,MAC,浏览器信息,所在城市-
- C#获取当前主机硬件信息