一个简单的使用方法。
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();
}
}
}
本文介绍了一个简单的C#程序,用于读取计算机设备的网卡MAC地址及硬盘卷标号。通过实例化ManagementClass并调用其GetInstances方法,程序能够获取到所有启用IP的网络适配器的MAC地址。此外,还提供了获取指定硬盘驱动器卷标号的方法。
669

被折叠的 条评论
为什么被折叠?



