Access开发培训
网站公告
·Access专家课堂QQ群号:151711184    ·Access快速开发平台下载地址及教程    ·欢迎加入Access专家课堂微信群!    ·如何快速搜索本站文章|示例|资料    
您的位置: 首页 > 技术文章 > Access数据库-模块/函数/VBA

[分享]一组基于 WMI 的函数

时 间:2009-04-27 14:53:13
作 者:朱亦文   ID:61  城市:岳阳
摘 要:获取主板编号、获取网上MAC地址、获取硬盘型号、获取IP地址
正 文:

'===============================================
'一组基于 WMI 的函数
'作者:朱亦文
'时间:2009.04.27
'===============================================

'获取主板编号
Public Function MainBoardSN() As String
    Dim objs As Object, Obj As Object
   
    Set objs = GetObject("WinMgmts:").InstancesOf("Win32_BaseBoard")
    For Each Obj In objs
        MainBoardSN = MainBoardSN & IIf(MainBoardSN <> "", ";", "") & Obj.SerialNumber
    Next
End Function

'获取网上MAC地址
Public Function NicMAC() As String
    Dim Nics As Object, oIP As Object
   
    Set Nics = GetObject("Winmgmts:").InstancesOf("Win32_NetworkAdapterConfiguration")
    For Each oIP In Nics
        If oIP.IPEnabled = True Then
            NicMAC = NicMAC & IIf(NicMAC <> "", ";", "") & oIP.MacAddress
            Exit For
        End If
    Next
End Function

'获取硬盘型号
Public Function HDModel() As String
    Dim hds As Object, hd As Object
   
    Set hds = GetObject("Winmgmts:").InstancesOf("Win32_DiskDrive")
    For Each hd In hds
        HDModel = HDModel & IIf(HDModel <> "", ";", "") & hd.Model
    Next
End Function

'获取IP地址
Public Function IP() As String
    Dim OpSysSet, OpSys, oIP
   
    Set OpSysSet = GetObject("winmgmts:{impersonationLevel=impersonate}//localhost"). _
        ExecQuery("Select index, IPAddress FROM Win32_NetworkAdapterConfiguration")
    For Each OpSys In OpSysSet
        If TypeName(OpSys.IPAddress) <> "Null" Then
            For Each oIP In OpSys.IPAddress
                IP = IP & IIf(IP <> "", ";", "") & oIP
            Next
        End If
    Next
End Function



Access软件网QQ交流群 (群号:483923997)       Access源码网店

常见问答:

技术分类:

相关资源:

专栏作家

关于我们 | 服务条款 | 在线投稿 | 友情链接 | 网站统计 | 网站帮助