Linux下如何获取网络设备MAC地址
获取网络设备MAC地址:/*创建socket,ifreq*/ int sock = 0x00; if((sock = socket (AF_INET, SOCK_STREAM, 0)) 0){ #if DEBUG cout"获取MAC地址-创建socket失败" #endif return -
·
获取网络设备MAC地址:
/*创建socket,ifreq*/
int sock =
0x00;
if((sock =
socket (AF_INET, SOCK_STREAM,
0)) <
0){
#if
DEBUG
cout<<
"获取MAC地址-创建socket失败" <<endl;
#endif
return -
0x02;
}
struct
ifreq mifreq;
strcpy(mifreq.
ifr_name,
"eth0");
/*获取MAC*/
if(
ioctl (sock, SIOCGIFHWADDR, &mifreq) <
0){
#if
DEBUG
cout<<
"获取MAC地址-获取MAC失败" <<endl;
#endif
close(sock);
return
0x01;
}
/*将MAC地址进行赋值*/
memcpy((
void *)macBuff, (
void *)mifreq.
ifr_hwaddr.
sa_data,
0x06);
3.进程管理器起进程时,argv[0]代表第一个参数,而用手动起时,argv[1]是第一个参数。
更多推荐
已为社区贡献4条内容
所有评论(0)