您的当前位置:我要购书网>在线阅读>VC++/C#/C

如何获取本机所有mac地址

来源:互联网  作者:我要购书网信息中心  发布:我要购物网收集整理  发布时间:2006-8-31 人气:345

// need include file: #include // need libary: Netapi32.lib int GetAllLocalAdapterMacAddr(std::list >& mac){ NCB ncb; LANA_ENUM AdapterList; memset(&ncb, 0, sizeof(ncb)); ncb.ncb_command = NCBENUM; ncb.ncb_buffer = (unsigned char *)&AdapterList; ncb.ncb_length = sizeof(AdapterList); Netbios(&ncb); mac.resize(0); for (int i = 0; i < AdapterList.length ; ++i ) { struct ASTAT { ADAPTER_STATUS adapt; NAME_BUFFER psz_name[30]; } Adapter; // Reset the LAN adapter so that we can begin querying it NCB Ncb; memset( &Ncb, 0, sizeof (Ncb)); Ncb.ncb_command = NCBRESET; Ncb.ncb_lana_num = AdapterList.lana[i]; if (Netbios(&Ncb) != NRC_GOODRET) continue; // Prepare to get the adapter status block memset(&Ncb, 0, sizeof(Ncb)) ; Ncb.ncb_command = NCBASTAT; Ncb.ncb_lana_num = AdapterList.lana[ i ]; strcpy((char *)Ncb.ncb_callname, "*" ); memset(&Adapter, 0, sizeof (Adapter)); Ncb.ncb_buffer = (unsigned char *)&Adapter; Ncb.ncb_length = sizeof (Adapter); // Get the adapter's info and, if this works, return it in standard, // colon-delimited form. if ( Netbios( &Ncb ) == 0 ) { std::vector v6; v6.resize(6); for (int i=0; i<6; i++) v6[i] = Adapter.adapt.adapter_address[i]; if (v6[0] == 0) { std::list >::iterator i = mac.begin(); for (; i!=mac.end(); i++) if (*i == v6) break; if (i==mac.end()) mac.push_back(v6); } } else break; } return 0;}
相关文章
· 如何获取本机所有mac地址
· 如何定义数据库表之间的关系
· 如何改变static控件的文字颜色
· 如何获得windows 操作系统的版本
· 如何得到网页中所有内嵌框架的ihtmldocument2..
· 如何使用sys用户remove其他用户的job
· 如何获取sql server数据库里表的占用容量大小
· 如何在mdi客户区窗口响应鼠标双击消息?
· 如何用c++编程获得某台机器的ip地址?
· 如何解决用access数据库建站维护不便的问题
热点文章
%>
· creating user controls
· 提高fastreplace速度 (fstrrep.pas)
· asc ii 完整码表及简介
· 自动生成拼音(汉字反查到拼音)
· sql2000无法安装的解决办法
· 浏览器集成教学 自定义浏览器
· vc++技术内幕(第四版)笔记(第7章)
· mysql5.0中文乱码解决方案
· sql server日期计算
· vc下利用ado连接access数据库
 淘宝旺旺:我要购书网上书店『图书目录
本购书中心地址: 杭州市延安路111号清波商厦南楼D座(总部) 上海市闸北区老沪太路网上购书中心(沪部),  邮编:310002
电子邮件:books@51goushu.com  经营许可证编号:沪ICP备06038574号
版权所有 2003-2008 © All Rights Reserved .购书网