免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 10467 | 回复: 13

[函数] 获得本机IP、MAC地址、 [复制链接]

论坛徽章:
0
发表于 2011-07-28 09:18 |显示全部楼层
要得到本机的mac和ip地址,
xp的机子上可以拿(不过在多网卡的情况下不准确);
win7的机子上拿不出来。
特此求教、

论坛徽章:
15
射手座
日期:2014-11-29 19:22:4915-16赛季CBA联赛之青岛
日期:2017-11-17 13:20:09黑曼巴
日期:2017-07-13 19:13:4715-16赛季CBA联赛之四川
日期:2017-02-07 21:08:572015年亚冠纪念徽章
日期:2015-11-06 12:31:58每日论坛发贴之星
日期:2015-08-04 06:20:00程序设计版块每日发帖之星
日期:2015-08-04 06:20:00程序设计版块每日发帖之星
日期:2015-07-12 22:20:002015亚冠之浦和红钻
日期:2015-07-08 10:10:132015亚冠之大阪钢巴
日期:2015-06-29 11:21:122015亚冠之广州恒大
日期:2015-05-22 21:55:412015年亚洲杯之伊朗
日期:2015-04-10 16:28:25
发表于 2011-07-28 10:56 |显示全部楼层
要得到本机的mac和ip地址,
xp的机子上可以拿(不过在多网卡的情况下不准确);
win7的机子上拿不出来。
特 ...
zoelakes 发表于 2011-07-28 09:18



    网上好像有现成的,搜一下吧。
linux的最近搞了一个,多网卡是准确的。

论坛徽章:
2
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:56:11
发表于 2011-07-28 11:02 |显示全部楼层
有个变通的算法.直接用pipe读ipconfig运行结果.

论坛徽章:
0
发表于 2011-07-28 17:05 |显示全部楼层
回复 3# cobras


    迷茫昂、查不到、帮我个忙吧、

论坛徽章:
0
发表于 2011-07-28 17:07 |显示全部楼层
回复 2# yulihua49


    是我的搜索能力差啊还是差啊、找不到、
    程序里执行 ipconfig/all 的命令、生成文件、再从文件里读IP、MAC、
    搜索无果、

论坛徽章:
15
射手座
日期:2014-11-29 19:22:4915-16赛季CBA联赛之青岛
日期:2017-11-17 13:20:09黑曼巴
日期:2017-07-13 19:13:4715-16赛季CBA联赛之四川
日期:2017-02-07 21:08:572015年亚冠纪念徽章
日期:2015-11-06 12:31:58每日论坛发贴之星
日期:2015-08-04 06:20:00程序设计版块每日发帖之星
日期:2015-08-04 06:20:00程序设计版块每日发帖之星
日期:2015-07-12 22:20:002015亚冠之浦和红钻
日期:2015-07-08 10:10:132015亚冠之大阪钢巴
日期:2015-06-29 11:21:122015亚冠之广州恒大
日期:2015-05-22 21:55:412015年亚洲杯之伊朗
日期:2015-04-10 16:28:25
发表于 2011-07-28 17:36 |显示全部楼层
回复  yulihua49


    是我的搜索能力差啊还是差啊、找不到、
    程序里执行 ipconfig/all 的命令、 ...
zoelakes 发表于 2011-07-28 17:07



    diskid32.rar (12.42 KB, 下载次数: 86)

论坛徽章:
0
发表于 2011-07-29 22:57 |显示全部楼层
  1. int GetLocalIP(char *LocaIP)
  2. {
  3.         // gethostname
  4.         WORD wVersionRequested;
  5.         WSADATA wsaPata;
  6.         char localhost[64] = {0};
  7.         wVersionRequested = MAKEWORD(2,0);
  8.         WSAStartup(wVersionRequested, &wsaPata);
  9.         gethostname(localhost, 64);
  10.         //AfxMessageBox(localhost);

  11.         //gethostbyname
  12.         struct hostent *hptr;
  13.         struct in_addr addr;
  14.        
  15.         hptr = gethostbyname(localhost);
  16.         addr.s_addr = *((unsigned int *)*(hptr->h_addr_list));
  17.         sprintf(LocaIP, "%s", inet_ntoa(addr));
  18.         //AfxMessageBox(LocaIP);
  19.        
  20.         WSACleanup();

  21.         return 0;
  22. }
复制代码
VS2010   , WIN7  获取成功. 临时写的, 数组定义可能太大了. 不过将就一下吧.

论坛徽章:
0
发表于 2011-08-01 09:15 |显示全部楼层
本帖最后由 zoelakes 于 2011-08-01 11:32 编辑

回复 7# linuxlixk
我机器上、
这些代码运行是没错的、
换台别的Win7就不行了、
其他人的可能是用户权限不够、
用UAC?
写manifest文件?
有那么复杂么、
读注册表行不行?
读注册表又方法可以实现通用吗?

论坛徽章:
0
发表于 2011-08-01 11:35 |显示全部楼层
回复 6# yulihua49


  哥哥、这个文件不会用、
system("ipconfig/all > config.txt");
这样写进文件来读的、
写了一大半儿、
忽然就发现、
不对劲儿、
分析文本得到的结果值、
太那个了、没有什么普遍性、

论坛徽章:
15
射手座
日期:2014-11-29 19:22:4915-16赛季CBA联赛之青岛
日期:2017-11-17 13:20:09黑曼巴
日期:2017-07-13 19:13:4715-16赛季CBA联赛之四川
日期:2017-02-07 21:08:572015年亚冠纪念徽章
日期:2015-11-06 12:31:58每日论坛发贴之星
日期:2015-08-04 06:20:00程序设计版块每日发帖之星
日期:2015-08-04 06:20:00程序设计版块每日发帖之星
日期:2015-07-12 22:20:002015亚冠之浦和红钻
日期:2015-07-08 10:10:132015亚冠之大阪钢巴
日期:2015-06-29 11:21:122015亚冠之广州恒大
日期:2015-05-22 21:55:412015年亚洲杯之伊朗
日期:2015-04-10 16:28:25
发表于 2011-08-03 11:04 |显示全部楼层
回复  yulihua49


  哥哥、这个文件不会用、
system("ipconfig/all > config.txt"
这样写进文件来 ...
zoelakes 发表于 2011-08-01 11:35



    你找一下里边的函数,有一个是MAC的,扒下来到你的环境中。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP