VB获取计算机硬件序列号

  目前比较常见的硬件资源包或:硬盘物理序列号、CPU序列号、网卡MAC地址、BIOS序列号、主板序列号等,下面是使用VB调用 Windows的WMI编写的一段硬件指纹获取的演示程序,直接将其另存为VBS后缀文件即可运行。稍加修改即可应用在共享软件里,实现用注册码对软件进行保护的功能。


+展开
-VBScript
   MsgValue = ""
    Set objWMIService = GetObject("winmgmts:\\.\root\cimv2")
    '获取硬盘序列号
    Set colItems = objWMIService.ExecQuery("SELECT * FROM Win32_PhysicalMedia", , 48)
    For Each objItem In colItems
        MsgValue = MsgValue & vbCrLf & "硬盘 = " & objItem.SerialNumber
    Next
    '获取主板序列号
    Set colItems = objWMIService.ExecQuery("Select * from Win32_BaseBoard", , 48)
    For Each objItem In colItems
        MsgValue = MsgValue & vbCrLf & "主板=" & objItem.SerialNumber
    Next
    '获取CPU ID
    Set colItems = objWMIService.ExecQuery("Select * from Win32_Processor", , 48)
    For Each objItem In colItems
        MsgValue = MsgValue & vbCrLf & "CPU = " & objItem.ProcessorId
    Next
    '获取BIOS序列号
    Set colItems = objWMIService.ExecQuery("Select * from Win32_BIOS", , 48)
    For Each objItem In colItems
        MsgValue = MsgValue & vbCrLf & "BIOS= " & objItem.SerialNumber
    Next
    '获取网卡MAC地址
    Set colItems = objWMIService.ExecQuery("SELECT MACAddress FROM Win32_NetworkAdapter WHERE ((MACAddress Is Not NULL) AND (Manufacturer <> 'Microsoft'))", , 48)
    For Each objItem In colItems
        MsgValue = MsgValue & vbCrLf & "网卡 = " & objItem.MACAddress
    Next
    Wscript.Echo MsgValue


来源:http://www.williamlong.info/archives/1544.html

加支付宝好友偷能量挖...


评论(0)网络
阅读(318)喜欢(0)Asp/VBScript