VC++获取网卡MAC、硬盘序列号、CPU+ID、BIOS编号

VC++获取网卡MAC、硬盘序列号、CPU+ID、BIOS编号

ID:37904413

大小:94.00 KB

页数:14页

时间:2019-06-02

VC++获取网卡MAC、硬盘序列号、CPU+ID、BIOS编号_第1页
VC++获取网卡MAC、硬盘序列号、CPU+ID、BIOS编号_第2页
VC++获取网卡MAC、硬盘序列号、CPU+ID、BIOS编号_第3页
VC++获取网卡MAC、硬盘序列号、CPU+ID、BIOS编号_第4页
VC++获取网卡MAC、硬盘序列号、CPU+ID、BIOS编号_第5页
资源描述:

《VC++获取网卡MAC、硬盘序列号、CPU+ID、BIOS编号》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、VC++获取网卡MAC、硬盘序列号、CPUID、BIOS编号以下代码可以取得系统特征码(网卡MAC、硬盘序列号、CPUID、BIOS编号)BYTEszSystemInfo[4096];//在程序执行完毕后,此处存储取得的系统特征码UINTuSystemInfoLen=0;//在程序执行完毕后,此处存储取得的系统特征码的长度//网卡MAC地址,注意:MAC地址是可以在注册表中修改的{UINTuErrorCode=0;IP_ADAPTER_INFOiai;ULONGuSize=0;DWORDdwResult=GetAdaptersInfo(&iai,&uSize);if(dwResul

2、t==ERROR_BUFFER_OVERFLOW){IP_ADAPTER_INFO*piai=(IP_ADAPTER_INFO*)HeapAlloc(GetProcessHeap(),0,uSize);if(piai!=NULL){dwResult=GetAdaptersInfo(piai,&uSize);if(ERROR_SUCCESS==dwResult){IP_ADAPTER_INFO*piai2=piai;while(piai2!=NULL&&(uSystemInfoLen+piai2->AddressLength)<4096U){CopyMemory(szSystemIn

3、fo+uSystemInfoLen,piai2->Address,piai2->AddressLength);uSystemInfoLen+=piai2->AddressLength;piai2=piai2->Next;}}else{uErrorCode=0xF0000000U+dwResult;}VERIFY(HeapFree(GetProcessHeap(),0,piai));}else{returnFALSE;}}else{uErrorCode=0xE0000000U+dwResult;}if(uErrorCode!=0U){returnFALSE;}}14//硬盘序列号,注

4、意:有的硬盘没有序列号{OSVERSIONINFOovi={0};ovi.dwOSVersionInfoSize=sizeof(OSVERSIONINFO);GetVersionEx(&ovi);if(ovi.dwPlatformId!=VER_PLATFORM_WIN32_NT){//OnlyWindows2000,WindowsXP,WindowsServer2003...returnFALSE;}else{if(!WinNTHDSerialNumAsPhysicalRead(szSystemInfo,&uSystemInfoLen,1024)){WinNTHDSerialNu

5、mAsScsiRead(szSystemInfo,&uSystemInfoLen,1024);}}}//CPUID{BOOLbException=FALSE;BYTEszCpu[16]={0};UINTuCpuID=0U;__try{_asm{moveax,0cpuidmovdwordptrszCpu[0],ebxmovdwordptrszCpu[4],edxmovdwordptrszCpu[8],ecxmoveax,1cpuidmovuCpuID,edx}}__except(EXCEPTION_EXECUTE_HANDLER){bException=TRUE;}14if(!bEx

6、ception){CopyMemory(szSystemInfo+uSystemInfoLen,&uCpuID,sizeof(UINT));uSystemInfoLen+=sizeof(UINT);uCpuID=strlen((char*)szCpu);CopyMemory(szSystemInfo+uSystemInfoLen,szCpu,uCpuID);uSystemInfoLen+=uCpuID;}}//BIOS编号,支持AMI,AWARD,PHOENIX{SIZE_Tssize;LARGE_INTEGERso;so.LowPart=0x000f0000;so.HighPar

7、t=0x00000000;ssize=0xffff;wchar_tstrPH[30]=L\device\physicalmemory;DWORDba=0;UNICODE_STRINGstruniph;struniph.Buffer=strPH;struniph.Length=0x2c;struniph.MaximumLength=0x2e;OBJECT_ATTRIBUTESobj_ar;obj_ar.Attributes=64;obj_ar.Length=24;o

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。