网卡没有GUID,那是MAC地址,
int GetMacCount(void)
// 获取网卡数
{
NCB ncb;
UCHAR uRetCode;
LANA_ENUM lana_enum; memset(&ncb,0,sizeof(ncb));
ncb.ncb_command=NCBENUM;
ncb.ncb_buffer=(unsigned char *)&lana_enum;
ncb.ncb_length=sizeof(lana_enum); uRetCode=Netbios(&ncb);
if(uRetCode==0)
return lana_enum.length;
else
return -1;
} LPCSTR GetMacAddress(int lana_num)
// 获取 mac 地址
{
typedef struct _ASTAT_
{
ADAPTER_STATUS adapt;
NAME_BUFFER NameBuf[30];
}ASTAT,* PASTAT; ASTAT Adapter; NCB ncb;
UCHAR uRetCode; memset(&ncb,0,sizeof(ncb));
ncb.ncb_command=NCBRESET;
ncb.ncb_lana_num=lana_num; uRetCode=Netbios(&ncb); memset(&ncb,0,sizeof(ncb));
ncb.ncb_command=NCBASTAT;
ncb.ncb_lana_num=lana_num; strcpy((char *)ncb.ncb_callname,"* ");
ncb.ncb_buffer=(unsigned char *)&Adapter;
ncb.ncb_length=sizeof(Adapter); uRetCode=Netbios(&ncb);
if(uRetCode==0)
{
char mac[15], * lpmac; 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]);
lpmac=mac;
return lpmac;
}
else
return NULL;
} 先获取系统中安装的网卡数,然后循环获取每块网卡的 mac 地址
int GetMacCount(void)
// 获取网卡数
{
NCB ncb;
UCHAR uRetCode;
LANA_ENUM lana_enum; memset(&ncb,0,sizeof(ncb));
ncb.ncb_command=NCBENUM;
ncb.ncb_buffer=(unsigned char *)&lana_enum;
ncb.ncb_length=sizeof(lana_enum); uRetCode=Netbios(&ncb);
if(uRetCode==0)
return lana_enum.length;
else
return -1;
} LPCSTR GetMacAddress(int lana_num)
// 获取 mac 地址
{
typedef struct _ASTAT_
{
ADAPTER_STATUS adapt;
NAME_BUFFER NameBuf[30];
}ASTAT,* PASTAT; ASTAT Adapter; NCB ncb;
UCHAR uRetCode; memset(&ncb,0,sizeof(ncb));
ncb.ncb_command=NCBRESET;
ncb.ncb_lana_num=lana_num; uRetCode=Netbios(&ncb); memset(&ncb,0,sizeof(ncb));
ncb.ncb_command=NCBASTAT;
ncb.ncb_lana_num=lana_num; strcpy((char *)ncb.ncb_callname,"* ");
ncb.ncb_buffer=(unsigned char *)&Adapter;
ncb.ncb_length=sizeof(Adapter); uRetCode=Netbios(&ncb);
if(uRetCode==0)
{
char mac[15], * lpmac; 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]);
lpmac=mac;
return lpmac;
}
else
return NULL;
} 先获取系统中安装的网卡数,然后循环获取每块网卡的 mac 地址
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货