Office中国论坛/Access中国论坛

标题: [转帖]纯API 取得硬盘的物理唯一序列号,源码例子,来自access911.net。 [打印本页]

作者: xlonger    时间: 2006-7-29 03:31
标题: [转帖]纯API 取得硬盘的物理唯一序列号,源码例子,来自access911.net。
这个例子是从ACCESS911上的文章中看到的,我纯粹是复制了一下,好东西不敢独享,推广一下。

'取得“逻辑”盘序列号(非唯一)
Function GetDiskVolume(Optional ByVal strDiskName = "C") As String
    Dim TempStr1 As String * 256, TempStr2 As String * 256
    Dim TempLon1 As Long, TempLon2 As Long, GetVal As Long
   
    Dim tmpVol As String
   
    Call GetVolumeInformation(strDiskName & ":\", TempStr1, 256, GetVal, TempLon1, TempLon2, TempStr2, 256)
    If GetVal = 0 Then
        tmpVol = ""
    Else
        tmpVol = Hex(GetVal)
        tmpVol = String(8 - Len(tmpVol), "0") & tmpVol
        tmpVol = Left(tmpVol, 4) & "-" & Right(tmpVol, 4)
    End If
    GetDiskVolume = tmpVol
End Function

'取得硬盘“物理”信息:型号/序列号(唯一)
Function GetHardDiskInfo(Optional ByVal numDisk As eumDiskNo = hdPrimaryMaster, Optional ByVal numType As eumInfoType = hdOnlySN) As String

    If GetDiskInfo(numDisk) = 1 Then
        Dim pSerialNumber As String, pModelNumber As String
        pSerialNumber = StrConv(m_DiskInfo.sSerialNumber, vbUnicode)
        pModelNumber = StrConv(m_DiskInfo.sModelNumber, vbUnicode)
        
        Select Case numType
            Case hdOnlyModel  '仅型号
                GetHardDiskInfo = Trim(pModelNumber)
            Case hdOnlySN  '仅序列号
                GetHardDiskInfo = Trim(pSerialNumber)
            Case Else   '型号和序列号
                GetHardDiskInfo = Trim(pModelNumber) & "," & Trim(pSerialNumber)
        End Select
     End If

End Function

完整的代码可以看例子或者ACCESS911.NET网站



[此贴子已经被作者于2006-8-5 18:10:31编辑过]

作者: xlonger    时间: 2006-8-2 16:04
我顶
作者: layaman_999    时间: 2006-8-4 02:01

作者: dhwx    时间: 2006-8-9 03:34
好东东我喜欢!!!
作者: XiaoLin82    时间: 2006-11-9 21:28
好东西 谢谢
作者: 乌の甲乌    时间: 2006-11-10 00:39
好啊,收了..谢谢!
作者: playphone    时间: 2008-4-1 12:20
好东西 谢谢
作者: liaug    时间: 2008-4-1 12:24
不错,好东东
作者: mb2056    时间: 2008-4-16 23:14
学习学习
作者: yanyun-5025    时间: 2008-5-20 22:01
[:36]
作者: yanyun-5025    时间: 2008-5-20 22:03
[:36]
作者: 高处不胜寒    时间: 2008-5-23 14:31
LOOK
作者: ABCaccess    时间: 2008-6-1 11:27
谢谢你与大众分享
作者: kevindeng    时间: 2008-7-23 16:49
只能获得逻辑盘的序列号
物理序列号获取不到,不知道为什么???

[ 本帖最后由 kevindeng 于 2008-7-23 16:51 编辑 ]
作者: smileyoufu    时间: 2009-2-17 22:36
没有看懂
作者: popo559    时间: 2009-3-12 06:29
谢谢分享!
作者: kangking    时间: 2009-3-12 08:51
好东西 谢谢!学习学习.
作者: ipqjj    时间: 2009-4-12 19:16
谢谢分享
作者: jicheng    时间: 2009-4-15 10:32
dddddddddddddddddd
作者: elong    时间: 2009-8-13 12:13

作者: 鱼儿游游    时间: 2009-10-7 01:58

作者: chaojianan    时间: 2009-10-10 10:52
支持下。谢谢。
作者: sbsfhgl    时间: 2010-5-9 13:55
学习学习
作者: 19720205    时间: 2010-6-8 13:05
楼主也不编辑一下,太难读了.
作者: sxb2007    时间: 2010-7-2 20:09
[:36]
作者: cclxf    时间: 2010-8-15 18:41

作者: bjjgq    时间: 2010-10-3 15:10
回复了之后还能看见什么呀
作者: li08hua    时间: 2010-10-19 13:56
谢谢分享!
作者: wangling    时间: 2010-10-21 03:17
try try see
作者: zzll15888    时间: 2010-11-14 01:20
好东西 谢谢

作者: bjcompass    时间: 2013-1-9 10:59
xiexie
作者: yinguojing    时间: 2013-4-20 18:09
学习
作者: sblisb    时间: 2013-5-4 22:36
看看
作者: daydayf    时间: 2013-7-15 20:42
hao dongxi
作者: leonshi    时间: 2013-11-7 18:37
学习下
作者: coolleaf    时间: 2013-11-14 21:19
怎么这么深奥呢,看不懂哇。
作者: c101    时间: 2014-10-12 14:52

学习
作者: zhao__feng    时间: 2017-12-19 16:23
谢谢




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3