本文实例采用vc6.0运行环境,通过实例实现获得MAC地址的功能。

完整的实例代码如下:

#include "stdafx.h"

#include

#include

#include

#include

#include

int getMAC(char * mac)

{

NCB ncb;

typedef struct _ASTAT_

{

ADAPTER_STATUS adapt;

NAME_BUFFER NameBuff [30];

}ASTAT, * PASTAT;

ASTAT Adapter;

typedef struct _LANA_ENUM

{ // le

UCHAR length;

UCHAR lana[MAX_LANA];

}LANA_ENUM ;

LANA_ENUM lana_enum;

UCHAR uRetCode;

memset(&ncb, 0, sizeof(ncb));

memset(&lana_enum, 0, sizeof(lana_enum));

ncb.ncb_command = NCBENUM;

ncb.ncb_buffer = (unsigned char *)&lana_enum;

ncb.ncb_length = sizeof(LANA_ENUM);

uRetCode = Netbios(&ncb);

if(uRetCode != NRC_GOODRET)

return uRetCode;

for(int lana=0; lana

{

ncb.ncb_command = NCBRESET;

ncb.ncb_lana_num = lana_enum.lana[lana];

uRetCode = Netbios(&ncb);

if(uRetCode == NRC_GOODRET)

break;

}

if(uRetCode != NRC_GOODRET)

return uRetCode;

memset(&ncb, 0, sizeof(ncb));

ncb.ncb_command = NCBASTAT;

ncb.ncb_lana_num = lana_enum.lana[0];

strcpy((char*)ncb.ncb_callname, "*");

ncb.ncb_buffer = (unsigned char *)&Adapter;

ncb.ncb_length = sizeof(Adapter);

uRetCode = Netbios(&ncb);

if(uRetCode != NRC_GOODRET)

return uRetCode;

sprintf(mac,"%02X-%02X-%02X-%02X-%02X-%02X",

Adapter.adapt.adapter_address[0],

Adapter.adapt.adapter_address[1],

Adapter.adapt.adapter_address[2],

Adapter.adapt.adapter_address[3],

Adapter.adapt.adapter_address[4],

Adapter.adapt.adapter_address[5]

);

return 0;

}

int main(int argc, char* argv[])

{

char mac[200];

getMAC(mac);

printf(" mac : %s \n",mac);

return 0;

}

另外还需要注意:必须在project->Setting里添加库文件“netapi32.lib”。

c语言获得本机mac地址,VC实现获取本机MAC地址的方法相关推荐

  1. C#获取本机网络连接名,获取和设置IP地址

    C#获取本机网络连接名,获取和设置IP地址,使用WMI接口 新建windowsForm应用程序GetAndSetIpAddressDemo,将默认的窗体Form1重命名为FormGetAndSetIP ...

  2. python获取mac、计算机id_python 获取本机IP、mac地址、计算机名的简单示例

    这篇文章主要为大家详细介绍了python 获取本机IP.mac地址.计算机名的简单示例,具有一定的参考价值,可以用来参考一下. 对python获取本机IP.mac地址.计算机名感兴趣的小伙伴,下面一起 ...

  3. android8.0获取mac地址,NJS如何获取安卓手机MAC地址 安卓版本8.0以上

    问题描述 我现在用H5+MUI+vue开发 官网给的获取MAC地址都不好用 要不是报错 要不就是02:00:00:00:00 这种根本不是实际地址所以想问问大神应该怎么获取 对NJS不是很了解查询不到 ...

  4. 获取手机mac php,IOS_iOS如何获取手机的Mac地址,首先说明下,下面两种方法均 - phpStudy...

    iOS如何获取手机的Mac地址 首先说明下,下面两种方法均可以获得手机的mac地址,但是有个限制,是在iOS7以下才可以获得.iOS7以后苹果对于sysctl和ioctl进行了技术处理,MAC地址返回 ...

  5. java 对象地址_如何获取Java对象的地址?

    有没有办法获取Java对象的地址? 问题来自哪里?:首先,我读取属性文件,并将文件中的所有数据放入表中.属性文件可以更新.所以,我想听那个文件.我使用PropertyChangeSupport和Pro ...

  6. php获取当前页面地址代码,PHP获取当前页面URL地址程序代码

    在php中要获取当前页面url地址方法很简单,下面我来给大家总结一下利用相关函数获取完整页面url地址的实例. PHP的预定义变量$_SERVER是一个包含头部(headers),路径信息及脚本位置的 ...

  7. java ip地址类,实现获取主机名称,IP地址的类 (java)

    /** *实现获取主机名称,IP地址的类. * Copyright (C) ☆苹果工作室☆ */ package com.applestudio.util; import java.net.*; pu ...

  8. java 获取本机的ip和mac_java获取本机ip和mac地址

    工作中用到的  总结下,与大家分享 package com.taile.msc.util; import java.net.InetAddress; import java.net.NetworkIn ...

  9. Android的mac和BSSID,Android 获取本机的mac和wifi的BSSID(mac)以及其他信息

    一上班就开始总结上礼拜写的wifi,先来说说wifi的属性 在Android的官方文档中定义了如下五种状态: WIFI_STATE_DISABLED   WIFI 不可用 WIFI_STATE_DIS ...

最新文章

  1. 快速入门 Nginx,这篇就够了!
  2. 10个非常有用的CSS hack和技术
  3. c语言赋值运算符 amp amp 怎么读,重载赋值运算符 amp;amp; 对象
  4. springboot执行批量插入_springboot+Mybatis 注解\Xml两种方式批量添加数据
  5. Android 广播接收器注册与注销源码分析
  6. LeetCode 368. 最大整除子集(动态规划)
  7. 新手建网站笔记(四)--快捷键
  8. android编译framework架包运行报错 (转)
  9. Ruby 常用的正则表达式1
  10. Mysql出现Table 'performance_schema.session_status' doesn't exist
  11. Compact, Redundant, Compressed, Dynamic的作用
  12. 关于PC下安装MAC苹果系统!
  13. (P61)io流类库:字符串流
  14. 未群发消息接腾讯服务器吗,腾讯企点如何群发消息 腾讯企点群发消息方法教程...
  15. python爬虫爬取图片代码_Python爬虫爬取煎蛋网图片代码实例
  16. 安徽师大附中%你赛day9 T2 富 解题报告
  17. 一生中必看的30个故事
  18. 本地html图片载入很慢,打开网页时图片加载很慢怎么办?网页图片打开慢的解决方法...
  19. 百度之星2018资格赛游记
  20. 判断OOBE 完成状态

热门文章

  1. 将多张图片无缝拼接方法
  2. 交强险日费率计算有变化
  3. 无人驾驶大巴试车_国内已对无人驾驶大巴汽车进行道路测试
  4. pre小技巧:强制换行与横向滚动条[转]
  5. 4g信号满2g无服务器,4G信号满格却上不了网?原因终于找到了!
  6. 新手小白初看R语言实战,从新手的角度体验R(不是简单地复制粘贴书,有错望见谅)
  7. android中虚线的实现
  8. 无符号、有符号数运算判溢出
  9. CAD教程:快速设置显示指定图层
  10. 接口接收中文出现%E9%9D%92%E6%B5%B7%E7%9C%81%E6%B5%B7%E8%A5%BF%E