主题:如何获取EM9360的硬件ID号 共有32756人关注过本帖 |
---|
yl |
1楼 信息 | 搜索 | 邮箱 |
加好友 发短信 |
Post By:2014-1-6 14:22:00 [显示全部帖子]
如果你使用的是Linux系统,则参考代码如下:
#include <stdio.h> #include <string.h> #include <unistd.h> #include <sys/ioctl.h> #include <net/if.h> #include "em9x60_drivers.h" int GetLocalMac( char* mac ) { int sock; struct ifreq ifr_mac; if( (sock=socket(AF_INET,SOCK_STREAM,0))<0 ) { return -1; } memset( &ifr_mac, 0, sizeof(ifr_mac) ); strcpy( ifr_mac.ifr_name, "eth0" ); if( ioctl( sock, SIOCGIFHWADDR, &ifr_mac)<0 ) { close( sock ); return -2; } memcpy( mac, ifr_mac.ifr_hwaddr.sa_data, 6 ); close( sock ); return 0; } int main( int argc,char* argv[] ) { char BufStr[80]; char mac[6]; GetLocalMac( mac ); sprintf( BufStr, "Mac: x:x:x:x:x:x", (unsigned char)mac[0], (unsigned char)mac[1], (unsigned char)mac[2], (unsigned char)mac[3], (unsigned char)mac[4], (unsigned char)mac[5] ); printf( "Mac = %s\n", BufStr ); return 0; } |
单帖管理 | 引用 | 回复 |