首页 > 代码库 > C#获取硬盘序列号的问题求助

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

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

 1 public static String GetHardWareId()
 2         {
 3             String num = null;
 4             List<String> hdids = new List<string>();
 5             ManagementClass mc = new ManagementClass("Win32_PhysicalMedia");
 6             ManagementObjectCollection moc = mc.GetInstances();
 7             foreach (var item in moc)
 8             {
 9                 String hdid = (string)item.Properties["SerialNumber"].Value.ToString();
10                 if (!string.IsNullOrEmpty(hdid)) { hdids.Add(hdid); }
11             }
12             for (int i = 0; i < hdids.Count; i++)
13             { num += hdids[i].ToString().Replace(" ", ""); }
14             return num;
15         }

得到的结果是这样的:技术分享

 

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