http://www.dapha.net/vb/list.asp?id=1886分少了点

解决方案 »

  1.   

    http://www.csdn.net/expert/topic/934/934383.xml?temp=.7288172http://www.dapha.net/vb/list.asp?id=1886
      

  2.   

    谢谢你们的回复!但是在http://www.dapha.net/vb/list.asp?id=1886的代码怎么不管用,我在Win98,Winme,Win2000得到的都是空值。
      

  3.   

    Private Declare Function GetVolumeInformation Lib "kernel32" Alias "GetVolumeInformationA" (ByVal IpRootPathName As String,ByVal lpVolumeNameBuffer As String,ByVal nVolumeNameSize As Long,lpVolumeSerialNumber As Long,lpMaximumComponentLength As Long,lpFileSystemFlags As Long,ByVal lpFileSystemNameBuffer As String,ByVal nFileSystemNameSize As Long) As Long Function GetSerialNumber(strDrive As String) As Long
    Dim SerialNum As Long
    Dim Res As Long
    Dim Temp1 As String
    Dim Temp2 As String
    Temp1 = String$(255,Chr$(0))
    Temp2 = String$(255,Chr$(0))Res=GetVolumeInformation(strDrive,Temp1,Len(Temp1),SerialNum,0,0,Temp2,Len(Temp2))
    GetSerialNumber = SerialNum
    End Function
    调用时,使用GetSerialNumber("C:\")
      

  4.   

    据我所知GetVolumeInformation 只能得到硬盘分区后的序列号,不能得到硬盘本身出厂的序列号