1、获取CPU的ID DWORD CDlgRegister::GetCPUID() { DWORD dwId1, dwId2, dwId3, dwId4; char szCompany[13]; PCHAR pCompany = szCompany; //DWORD dwCPU; szCompany[12]=0; _asm { pushfd pushad //取得CPU的ID号 mov eax,1 //功能号 _emit 0x0f _emit 0xa2 mov dwId1,eax mov dwId2,ebx mov dwId3,ecx mov dwId4,edx //取得CPU的制造公司名称 mov edi,pCompany //功能号 mov eax,0 _emit 0x0f _emit 0xa2 mov eax,ebx stosd mov eax,edx stosd mov eax,ecx stosd popad popfd } DWORD dwResult = 0; DWORD dwTemp1 = dwId1 << 12; DWORD dwTemp2 = dwId2 << 8 ; DWORD dwTemp3 = dwId3 << 4; dwResult = dwTemp1 + dwTemp2 + dwTemp3 + dwId4; return dwResult; } 2、获取c 硬盘的序列号