获取网卡地址
如何獲取網(wǎng)卡地址(MAC地址):
VC++編寫(xiě)的代碼,適用于windows環(huán)境,API實(shí)現(xiàn)
/*char *pMACAdr,返回網(wǎng)卡地址的buff,
?int *nBuffLen前一個(gè)參數(shù)的長(zhǎng)度,
?int nAdapterID = 0網(wǎng)卡號(hào),針對(duì)多網(wǎng)卡問(wèn)題,有的機(jī)器不止一個(gè)網(wǎng)卡,默認(rèn)為0
*/
?
#include <NB30.H>
#pragma comment(lib, "C:\\Program Files\\Microsoft Visual Studio\\VC98\\Lib\\Netapi32.lib")//自己找安裝目錄
BOOL GetMACAdress(char *pMACAdr, int *nBuffLen, int nAdapterID = 0)
{
?if (NULL == pMACAdr || *nBuffLen <= 0 || nAdapterID < 0) {
??*nBuffLen = 0;
??return FALSE;
?}
?memset(pMACAdr, 0, *nBuffLen);
?typedef struct _ASTAT_???
?{???
??ADAPTER_STATUS?? adapt;???
??NAME_BUFFER????? NameBuff?? [30];???
?}ASTAT, *PASTAT;?
?NCB??ncb;???
?UCHAR?? uRetCode;???
?ASTAT?? Adapter;?
?
?memset(&ncb, 0, sizeof(ncb));???
?ncb.ncb_command? = NCBRESET;???
?//網(wǎng)卡序號(hào),一般從0開(kāi)始
?ncb.ncb_lana_num = nAdapterID;??
?
?//send one NCBRESET command to the adapter car, for initialzing
?uRetCode = Netbios(&ncb);?? ???
?memset(&ncb, 0, sizeof(ncb));???
?ncb.ncb_command? = NCBASTAT;???
?ncb.ncb_lana_num = nAdapterID;//specify the adapter car ID??
????
?strcpy((char*)ncb.ncb_callname, "* ");???
?ncb.ncb_buffer = (PUCHAR)&Adapter;???????
?ncb.ncb_length = sizeof(Adapter);???
????
?//send the NCBRESET command to get the adapter car msg??
?uRetCode = Netbios(&ncb);?
?CString szMacAdr;??
?if(0 == uRetCode) {?? //獲得網(wǎng)卡信息成功
??szMacAdr.Format("%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]??
???);
?}
?if (szMacAdr.IsEmpty()) ?{
??*nBuffLen = 0;
??return FALSE;
?}
?else{
??int nMacLen = szMacAdr.GetLength();
??*nBuffLen = nMacLen <= *nBuffLen ? nMacLen : *nBuffLen;
??memcpy(pMACAdr, szMacAdr.GetBuffer(*nBuffLen), *nBuffLen);
??return TRUE;
?}
}
?
如果想現(xiàn)存的DLL或者ActiveX控制, 在我的資源里有封裝好的DLL與ActiveX控制下載, 直接調(diào)用接口使用即可
?
轉(zhuǎn)載于:https://www.cnblogs.com/MingoJiang/p/8682212.html
總結(jié)
- 上一篇: 第四次读书笔记
- 下一篇: PHP 学习总结之变量