获取硬盘相应序列号(C#完整类)

    技术2022-05-11  72

    using System;using Microsoft.Win32;using System.Globalization;using System.Runtime;using System.Runtime.InteropServices;using System.Text;using System.IO;  namespace HKH.Common{ /// <summary> /// Summary description for clsIDE. /// </summary> public class clsIDE {  /// <summary>  /// 获取硬盘相应分区的序列号  /// </summary>  /// <returns></returns>  public static string GetAllSerialNumber()  {   string Dri = "";

       System.Management.ManagementClass mo = new System.Management.ManagementClass("Win32_LogicalDisk");        System.Management.ManagementObjectCollection mc = mo.GetInstances();

       foreach (System.Management.ManagementObject m in mc)   {    if (Convert.ToString(m.Properties["DriveType"].Value) == "3")    {     Dri = Dri + m.Properties["VolumeSerialNumber"].Value.ToString() + "/n";    }   }

       Dri = Dri.Substring(0, Dri.Length - 1);

       return Dri;  }

      /// <summary>  /// 获取硬盘相应分区的序列号  /// </summary>  /// <param name="Drive">盘符(如 C)</param>   /// <returns></returns>  public static string GetSpecialVolumeSerialNumber(string Drive)  {   string Dri = "";

       System.Management.ManagementClass mo = new System.Management.ManagementClass("Win32_LogicalDisk");        System.Management.ManagementObjectCollection mc = mo.GetInstances();

       foreach (System.Management.ManagementObject m in mc)   {    if (Convert.ToString(m.Properties["DriveType"].Value) == "3")    {     if (m.Properties["Name"].Value.ToString().ToUpper().Trim().Substring(0, 1) == Drive.ToUpper().Trim())     {      Dri = Dri + m.Properties["VolumeSerialNumber"].Value.ToString();

          break;     }    }   }

       return Dri;  }

      private clsIDE()  {  }

     }} 


    最新回复(0)