要物理的,而且是操作系统所在的那个硬盘。

解决方案 »

  1.   

    DllImport("kernel32.dll")]   
      private   static   extern   int   GetVolumeInformation(   
        string     lpRootPathName,   
        string     lpVolumeNameBuffer,   
        int     nVolumeNameSize,   
        ref   int     lpVolumeSerialNumber,   
        int     lpMaximumComponentLength,   
        int     lpFileSystemFlags,   
        string     lpFileSystemNameBuffer,   
        int     nFileSystemNameSize   
        );   
    试一下
      

  2.   

    vb.net的,改改,很容易
    http://www.xmlasp.net/n1227c13.aspx
      

  3.   

    具体要哪个盘的信息可以写得更简单,wmi的查询语句(select***)里加上where条件
      

  4.   

    貌似很麻烦,google一下还是很多的,只是大多数C/C++的,要自己转换下,且貌似看到大多数代码还用了汇编~
      

  5.   

    using System.Management;ManagementClass mntclass = new ManagementClass("WIN32_DiskDrive");
    ManagementObjectCollection mocol = mntclass.GetInstances();
    foreach (ManagementObject mo in mocol)
    {
    if ("WIN32_NetworkAdapterConfiguration".Equals("WIN32_DiskDrive")
    && (!(bool)mo["IPEnabled"])) return null; return mo["signature"].ToString();
               //   or return mo["Model"].ToString();
    }
      

  6.   

    用WMI, .net 2.0的library里封装现成了的 public static string GetHardDiskSerialNumber
            {                    string hardDiskID = null;
                        ManagementClass cimobject1 = new ManagementClass("Win32_DiskDrive");
                        ManagementObjectCollection moc1 = cimobject1.GetInstances();
                        foreach (ManagementObject mo in moc1)
                        {
                            if (hardDiskID == null)
                            {
                                hardDiskID = mo.Properties["Model"].Value.ToString();
                            }
                            else
                            {
                                hardDiskID += ";" + mo.Properties["Model"].Value.ToString();
                            }
                        }
                        return (hardDiskID == null) ? "None" : hardDiskID;        }
      

  7.   

    ///   <summary> 
            ///   获取硬盘ID     
            ///   </summary> 
            ///   <returns> string </returns> 
            public static string GetHDid()
            {
                string HDid = " ";
                ManagementClass cimobject1 = new ManagementClass("Win32_DiskDrive");
                ManagementObjectCollection moc1 = cimobject1.GetInstances();
                foreach (ManagementObject mo in moc1)
                {
                    HDid = (string)mo.Properties["Model"].Value;
                }
                return HDid.ToString();
            }
      

  8.   

    signature和model分别返回什么,有哪位知道?