CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VB >  基础类

如何根据IP地址获得其MAC地址?

楼主hello__every(hello)2002-03-15 16:40:59 在 VB / 基础类 提问

请教该调用什么函数获得IP地址的MAC地址?  
  我看有些软件可以扫描到IP地址的MAC地址,想知道怎么实现?  
                                                                谢谢! 问题点数:20、回复次数:5Top

1 楼javanj()回复于 2002-03-15 16:54:31 得分 5

可以使用iphlpapi.dll中的函数,具体看msdnTop

2 楼javanj()回复于 2002-03-15 16:56:32 得分 5

Functions   for   Application   Developers  
  The   iphlpapi   module   contains   the   following   functions   for   application   developers,   which   are   defined   in   the   Iphlpapi.h   header   file.   To   import   these   functions,   you   need   to   link   to   the   iphlpapi.lib   file.  
   
   
  Function    
  AddIPAddress    
  CreateIpForwardEntry    
  CreateIpNetEntry    
  CreateProxyArpEntry    
  DeleteIPAddress    
  DeleteIpForwardEntry    
  DeleteIpNetEntry    
  DeleteProxyArpEntry    
  FlushIpNetTable    
  GetAdapterIndex    
  GetAdaptersInfo    
  GetBestInterface    
  GetBestRoute    
  GetFriendlyIfIndex    
  GetIcmpStatistics    
  GetIfEntry    
  GetIfTable    
  GetInterfaceInfo    
  GetIpAddrTable    
  GetIpForwardTable    
  GetIpNetTable    
  GetIpStatistics    
  GetNetworkParams    
  GetNumberOfInterfaces    
  GetPerAdapterInfo    
  GetRTTAndHopCount    
  GetTcpStatistics    
  GetTcpTable    
  GetUdpStatistics    
  GetUdpTable    
  GetUniDirectionalAdapterInfo    
  IpReleaseAddress    
  IpRenewAddress    
  NotifyAddrChange    
  NotifyRouteChange    
  SendARP    
  SetIfEntry    
  SetIpForwardEntry    
  SetIpNetEntry    
  SetIpStatistics    
  SetIpTTL    
  SetTcpEntry    
   
  Top

3 楼Bardo(巴顿(永远只有一个))回复于 2002-03-15 18:28:36 得分 5

以下是要用到的函数与常量,  
  程序你自己写吧  
  函数用法参见MSDN  
   
  Private   Declare   Function   SendARP   Lib   "iphlpapi.dll"   _  
                  (ByVal   DestIP   As   Long,   _  
                    ByVal   SrcIP   As   Long,   _  
                    pMacAddr   As   Long,   _  
                    PhyAddrLen   As   Long)   As   Long  
   
  '-----END   iphlpapi   Function-----  
   
  '-----BEGIN   WinSocket2   Function-----  
   
  Private   Declare   Function   inet_addr   Lib   "ws2_32.dll"   _  
          (ByVal   cp   As   Long)   As   Long  
           
  '-----END   WinSocket2   Function-----  
   
  Private   Const   NO_ERROR   =   0   '     dderror  
   
  '-----BEGIN   System   Function-----  
   
  Private   Declare   Sub   CopyMemory   Lib   "kernel32"   Alias   _  
                  "RtlMoveMemory"   (hpvDest   As   Any,   ByVal   hpvSource   As   _  
                  Long,   ByVal   cbCopy   As   Long)  
                   
  Private   Declare   Function   lstrlen   Lib   "kernel32"   Alias   _  
                  "lstrlenA"   (ByVal   lpString   As   String)   As   Long  
                   
   
  Private   Declare   Function   FormatMessage   Lib   "kernel32"   Alias   _  
                  "FormatMessageA"   (ByVal   dwFlags   As   Long,   _  
                                                      lpSource   As   Any,   _  
                                                      ByVal   dwMessageId   As   Long,   _  
                                                      ByVal   dwLanguageId   As   Long,   _  
                                                      ByVal   lpBuffer   As   String,   _  
                                                      ByVal   nSize   As   Long,   _  
                                                      Arguments   As   Long)   As   Long  
   
  Private   Const   FORMAT_MESSAGE_ALLOCATE_BUFFER   =   &H100  
  Private   Const   FORMAT_MESSAGE_FROM_SYSTEM   =   &H1000  
  Private   Const   FORMAT_MESSAGE_IGNORE_INSERTS   =   &H200  
  Top

4 楼Mailbomb(网络咖啡http://blog.csdn.net/mailbomb)回复于 2002-03-15 20:15:09 得分 5

在DOS下按顺序执行以下命令:  
      ping   IP地址  
      arp-   a  
  就可以获得该IP的MAC地址,不过这个方法一般只在局域网内有效,因为路由器会过滤arp的Top

5 楼langzhi(langzhi)回复于 2002-05-03 22:59:51 得分 0

做个标记Top

相关问题

  • 已知IP地址,如何获得主机的MAC地址??(BCB实现)
  • IPv6中根据MAC地址获得IP地址的命令是什么?
  • 如何获得mac 地址
  • 如何获得网卡(多个网卡)各自的型号及对应的IP地址?MAC地址
  • 如何获得本机的IP地址?
  • 多IP地址如何获得?????
  • 这样获得web server 的IP地址?
  • 怎样获得本机的ip地址?
  • 如何获得本机的IP地址?
  • 如何获得本机的ip地址

关键词

  • 函数
  • mac
  • ip
  • application
  • 地址
  • iphlpapi
  • 获得
  • ip地址的mac
  • function
  • for application

得分解答快速导航

  • 帖主:hello__every
  • javanj
  • javanj
  • Bardo
  • Mailbomb

相关链接

  • Visual Basic类图书
  • Visual Basic类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo