【access源码】一个用于获取网卡MAC地址或IP地址的通用函数\获取本机内网IP的示例-红尘如烟
Access软件网QQ交流学习群(群号码198465573),欢迎您的加入!
首页 >技术文章> Access数据库-模块/函数/VBA


【access源码】一个用于获取网卡MAC地址或IP地址的通用函数\获取本机内网IP的示例

发表时间:2010/8/8 评论(3) 浏览(59325)  评论 | 加入收藏 | 复制
   
摘 要:返回由指定分隔符分隔的未被禁用的网卡MAC地址或IP地址,具体的返回内容由Index参数确定
正 文:

'=========================================================================================================
'函数名称: GetNICInfo
'功能描述: 返回由指定分隔符分隔的未被禁用的网卡MAC地址或IP地址,具体的返回内容由Index参数确定
'输入参数: Index       必需的,要返回的信息(0返回MAC地址,1返回IPV4地址,2返回IPV6地址
'           Delimiter   可选的,存在多个网卡(可能是物理的或虚拟的)时,返回信息的分隔字符
'返回参数: 返回所有被启用网卡的信息(如果有多个网卡,则由指定分隔符分隔
'           没有网卡或网卡全部被禁用时返回空字符串("")
'使用示例: =GetNICInfo(1)  '返回示例:192.168.1.100
'相关调用:
'使用注意:
'兼 容 性: 使用win32_NetworkAdapterConfiguration类实现,XP和Win7操作系统测试通过
'参考资料:
'作    者: 红尘如烟
'创建日期: 2010-8-7
'=========================================================================================================
Public Function GetNICInfo(ByVal Index As Integer, Optional ByVal Delimiter As String = vbCrLf) As String
    On Error GoTo ErrorHandler
    Dim objWMIService   As Object
    Dim objItems              As Object
    Dim objItem                As Object
    Dim strTemp               As String

    Set objWMIService = GetObject("winmgmts:\\.\root\cimv2")
    strTemp = "Select * FROM win32_NetworkAdapterConfiguration Where IPEnabled=True"
    Set objItems = objWMIService.ExecQuery(strTemp)
    strTemp = ""
    For Each objItem In objItems
        Select Case Index
        Case 0  'MAC地址
            strTemp = objItem.MACAddress
        Case 1  'IPV4地址
            strTemp = objItem.IPAddress(0)
        Case 2  'IPV6地址
            strTemp = objItem.IPAddress(1)
        End Select
        If GetNICInfo <> "" And strTemp <> "" Then GetNICInfo = GetNICInfo & Delimiter
        GetNICInfo = GetNICInfo & strTemp
    Next
   
ExitHere:
    Set objWMIService = Nothing
    Set objItems = Nothing
    Set objItem = Nothing
    Exit Function
   
ErrorHandler:
'    MsgBox Err.Description, vbCritical, "Error"
    Resume ExitHere
End Function


附   件:

点击下载此附件


演   示:



相关其他示例:

获取本机外网IP的示例


Access软件网交流QQ群(群号:198465573)
 
 相关文章
获取本机网卡MAC码  【不祥  2010/7/20】
【access源码】一个获取本机外网IP的函数\获取本机公网IP的...  【红尘如烟  2012/4/7】
在Access中获取本机IP地址、电脑名及开机登录用户名  【林岚  2018/1/29】
常见问答
技术分类
相关资源
文章搜索
关于作者

红尘如烟

文章分类

文章存档

友情链接