下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
C#如何获取设备Mac地址利用dns类和WMI规范获取IP及MAC地址在C#编程中,要获取主机名和主机IP地址,是比较简单的.它供给的Dns类,可以轻松的获得主机名和IP地址.示例:[c-sharp]viewplaincopystringstrHostName=( );oString( );Dns类主若是从域名系统(DNS)中检索关于特定主机的信息,上边的代码第一行就从当地的DNS中检索出当地主机名.IPHostEntry类则将一个域名系统或主机名与一组IP地址相关系,它与DNS类一起使用,用于获取主机的IP地址组.要获取远程主机的IP地址,其方法也是迥然不一样.在获取了IP地址后,假如还需要获得网卡的MAC地址,就需要进一步研究了.这里又分两种状况,一是本机MAC地址,二是远程主机MAC地址.两者的获取是完整不一样的.在获取本机的MAC地址时,可以使用WMI规范,经过SELECT语句提取MAC地址.在.NET框架中,WMI规范的实现定义在命名空间中.ManagementObjectSearcher类用于依据指定的盘问检索管理对象的会集ManagementObjectCollection类为管理对象的会集,下例中由检索对象返回管理对象会集赋值给它.示例:[c-sharp]viewplaincopyManagementObjectSearcherquery=newManagementObjectSearcher("SELECT*FROMWin32_NetworkAdapterConfiguration");2.ManagementObjectCollectionqueryCollection=( );3.foreach(ManagementObjectmoinqueryCollection){5.if(mo["IPEnabled"].ToString( )=="True")mac=mo["MacAddress"].ToString( );}获取远程主机的MAC地址时,需要借用API函数SendARP.该函数使用ARP协议,向目的主机发送ARP包,利用返回并储存在高速缓存中的IP和MAC地址对,从而获取远程主机的MAC地址.示例:[c-sharp]viewplaincopyInt32ldest=inet_addr(remoteIP);为在标准网络协议下,ARP包是不可以跨网段传输的,故想经过ARP协议是没法盘问跨网段设备MAC地址的。示例程序:[c-sharp]viewplaincopy1.using;2.usingSystem;3.using;usingnamespaceConsoleApplication2{8.publicclassProgram9.{10.[DllImport("")]11.privatestaticexternintSendARP(Int32dest,Int32host,refInt64mac,refInt32length);12.[DllImport("")]13.privatestaticexternInt32inet_addr(stringip);14.15.oString( );16.return(strAddr);17.}18.oString( )=="True")19.mac=mo["MacAddress"].ToString( );20.}21.return(mac);22.}23.24.oString( );25.}26.return(strAddr);27.}28.oString( )+macnum[*i-1].ToString( );oString( );29.}30.else31.{32.macaddr=macaddr+":"+macArr[j].ToString( );33.}34.}35.returnmacaddr;36.}37.catch(Exceptionerr)38.{39.("Error:{0}",;40.}41.return"没法获取MAC地址";42.}43.44.45.publicstaticvoidMain(string[]args)46.{47.Programgi=newProgram( );48.("当地网卡信息:");49.( )+"-"+( ));50.51.("/n/r远程设备的网卡信息:");52.string[]temp=("MyComputer");//远程设备的Host名称53.for(inti=0;i<;i++)54.{55.(temp[i]);56.}57.("/n/r远程设备的Mac信息:");58.stringDeviIP="";//远程设备的IP地址59.( ),DeviIP));60.( );61.}62.}63.}注:在VisualStudio2008
中,可能会出现:
找不到种类或命名空间名称“ManagementObjectSearcher”
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 数据通信机务员安全宣贯知识考核试卷含答案
- 汽车整车装调工创新应用测试考核试卷含答案
- 酱腌菜制作工操作技能知识考核试卷含答案
- 锯床工岗前实操能力考核试卷含答案
- 肉制品品评师安全操作竞赛考核试卷含答案
- 小风电利用工班组考核考核试卷含答案
- 漆器制胎工保密评优考核试卷含答案
- 古茗租金资产评估
- 项目管理关键要领概述
- 锁扣管幕施工方案
- 2026年及未来5年市场数据中国航空复合材料市场运行态势及行业发展前景预测报告
- 论持久战课件
- (2025年)煤矿洗煤厂安全培训试题及答案(从业人员安全生产基础知识)
- 马工程政治学概论第二版教学课件导论(上)
- 【台账】排污单位自行监测法律法规文件汇编
- 2026国网湖南省电力公司高校毕业生提前批招聘(约450人)笔试备考题库浓缩500题含答案详解(基础题)
- 工厂运营筹备汇报
- 上汽大通员工管理办法
- 江苏省常州市2025年中考数学试卷附真题答案
- 蒸发浓缩结晶工设备调试考核试卷及答案
- 东芝热泵式滚筒洗衣干衣机DGH-117X6D、DGH-117X6DZ产品培训资料
评论
0/150
提交评论