欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

C#获取硬盘序列号的问题小结

程序员文章站 2022-07-06 10:55:56
先给大家描述下问题的来龙去脉。 具体问题是这样的:我用下面这段获取硬盘型信息的代码做成的exe文件,在机子上测试的时候,出现直接双击运行和用管理员身份运行结果不一样的情况...

先给大家描述下问题的来龙去脉。

具体问题是这样的:我用下面这段获取硬盘型信息的代码做成的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 = 0; i < hdids.count; i++)
      { num += hdids[i].tostring().replace(" ", ""); }
      return num;
    }

得到的结果是这样的:

C#获取硬盘序列号的问题小结

以上所述是小编给大家介绍的c#获取硬盘序列号的问题小结,希望对大家有所帮助