一个简单的使用方法。
using System;
using System.Management;
namespace NetCard
{
/// <summary>
/// 读取设备
/// </summary>
public class run
{
private ManagementClass mc;
private ManagementObjectCollection moc;
private ManagementObject disk;
public run()
{}
/// <summary>
/// 取得设备网卡的MAC地址
/// </summary>
public string GetNetCardMacAddress()
{
mc = new ManagementClass("Win32_NetworkAdapterConfiguration");//构造管理类的实例
moc = mc.GetInstances();
string str = "";
foreach(ManagementObject mo in moc)
{
if((bool)mo["IPEnabled"] == true)
str = mo["MacAddress"].ToString();//可以改成很多,从WMI上面可以取很多值,都是系统的一些指数
}
return str;
}
/// <summary>
/// 取得设备硬盘的卷标号
/// </summary>
/// <returns></returns>
public string GetDiskVolumeSerialNumber()
{
mc = new ManagementClass("Win32_NetworkAdapterConfiguration");
disk = new ManagementObject("win32_logicaldisk.deviceid=/"c:/"");
disk.Get();
return disk.GetPropertyValue("VolumeSerialNumber").ToString();
}
}
}