获取本机的网路MAC值

提醒各位:

         目前网上很多获取MAC地址的,如果你主机上安装了虚拟机时,注意获取的是虚拟机的MAC还是主机的MAC。

我提供的是获取本机的MAC值。

/*
 *本接口在调用时注意:
 *需要加载头文件#include  <Nb30.h>
 *需要加载netapi32.lib链接库
*/

CString CMacApp::getmacad()
{
    CString strMac;
    NCB ncb;
    ADAPTER_STATUS adapt;
    memset(&ncb,0,sizeof(ncb));
    ncb.ncb_command = NCBRESET;   
    //首先对网卡发送一个NCBRESET命令以便进行初始化
    Netbios(&ncb);
    ncb.ncb_command = NCBASTAT;
    strcpy((char *)ncb.ncb_callname,"*");
    // 指定返回的信息存放的变量
    ncb.ncb_buffer = (unsigned char *)&adapt;
    ncb.ncb_length = sizeof(adapt);
    //  发送NCBASTAT命令以获取网卡的信息
    Netbios(&ncb);
    // 把网卡MAC地址格式化成常用的16进制形式
    WCHAR mac[MAX_PATH]={0};
    _stprintf(mac,_T("%02X%02X-%02X%02X-%02X%02X\n"),
     adapt.adapter_address[0],
     adapt.adapter_address[1],
    adapt.adapter_address[2],
     adapt.adapter_address[3],
     adapt.adapter_address[4],
    adapt.adapter_address[5]);
    //m_edit.SetWindowText(strMac);
    return mac;
}           

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值