• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >C语言 > VC实现获取本机MAC地址的方法

VC实现获取本机MAC地址的方法

作者: 字体:[增加 减小] 来源:互联网 时间:2017-05-28

通过本文主要向大家介绍了vc 获取本机ip,vc 获取mac地址,vc mac,vc 获取mac,vc 实现系统内存共享等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

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

完整的实例代码如下:

#include "stdafx.h"
#include  <stdio.h>  
#include  <stdlib.h>  
#include  <httpext.h>  
#include  <windef.h>  
#include  <Nb30.h>

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<lana_enum.length; 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;
}

</div>

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

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • VC实现获取本机MAC地址的方法

相关文章

  • 2017-05-28C++基础之this指针与另一种“多态”
  • 2017-05-28C基础 redis缓存访问详解
  • 2017-05-28C语言创建windows窗口实例
  • 2017-05-28浅谈mwArray和一般数组的区别
  • 2017-05-28C#如何调用原生C++ COM对象详解
  • 2017-05-28详解C语言中strcpy()函数与strncpy()函数的使用
  • 2017-05-28分享C++面试中string类的一种正确写法
  • 2017-05-28C++日志记录类实例解析
  • 2017-05-28C/C++中可变参数的用法详细解析
  • 2017-05-28解析C++编程中的选择结构和switch语句的用法

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • C语言中网络地址与二进制数之间转换的函数小结
    • 浅析char 指针变量char *=p 这个语句的输出问题
    • 如何在C++中实现按位存取
    • C++实现一维向量旋转算法
    • 在C语言中对utmp文件进行查找和写入操作的函数小结
    • C++结构体数组详细解析
    • 使用WindowsAPI获取录音音频的方法
    • 对比C语言中的setbuf()函数和setvbuf()函数的使用
    • C++内核对象封装单实例启动程序的类
    • C语言 运算符详细介绍及示例代码

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有