C#获取硬盘序列号的问题求助

时间:2022-05-24 00:49:10

具体问题是这样的:我用下面这段获取硬盘型信息的代码做成的exe文件,在机子上测试的时候,出现直接双击运行和用管理员身份运行结果不一样的情况,这个问题该怎么解决?

 public static String GetHardWareId()
{
String num = null;
List<String> hdids = new List<string>();
ManagementClass mc = new ManagementClass("Win32_PhysicalMedia");
ManagementObjectCollection moc = mc.GetInstances();
foreach (var item in moc)
{
String hdid = (string)item.Properties["SerialNumber"].Value.ToString();
if (!string.IsNullOrEmpty(hdid)) { hdids.Add(hdid); }
}
for (int i = ; i < hdids.Count; i++)
{ num += hdids[i].ToString().Replace(" ", ""); }
return num;
}

得到的结果是这样的:C#获取硬盘序列号的问题求助