获取系统信息学习

来源:互联网 发布:域名联想工具 编辑:程序博客网 时间:2024/04/27 14:13
DWORD dwEAX = 0;DWORD dwEBX = 0;DWORD dwECX = 0;DWORD dwEDX = 0;// 获取CPUID0_asm{mov eax, 0cpuidmov dwEAX, eaxmov dwEBX, ebxmov dwECX, ecxmov dwEDX, edx}printf("CPUID0:\r\nEAX = %p\r\n"   "EBX = %p\r\n"   "ECX = %p\r\n"   "EDX = %p\r\n",   dwEAX, dwEBX, dwECX, dwEDX);puts("");// 获取CPUID1_asm{mov eax, 1cpuidmov dwEAX, eaxmov dwEBX, ebxmov dwECX, ecxmov dwEDX, edx}printf("CPUID1:\r\nEAX = %p\r\n""EBX = %p\r\n""ECX = %p\r\n""EDX = %p\r\n",dwEAX, dwEBX, dwECX, dwEDX);puts("");// 参数1的结构体PIP_ADAPTER_INFO tag_AdapterInfo = new IP_ADAPTER_INFO[sizeof(IP_ADAPTER_INFO)];PIP_ADAPTER_INFO lpTemp = tag_AdapterInfo;// 参数2的大小ULONG lLen = sizeof(IP_ADAPTER_INFO);GetAdaptersInfo(tag_AdapterInfo, &lLen);GetAdaptersInfo(tag_AdapterInfo, &lLen);// 循环获取机器上的所有网卡信息.while(lpTemp){printf("MAC: %02x-%02x-%02x-%02x-%02x-%02x\r\n",   lpTemp->Address[0],   lpTemp->Address[1],   lpTemp->Address[2],   lpTemp->Address[3],   lpTemp->Address[4],   lpTemp->Address[5]);lpTemp = lpTemp->Next;}delete[] tag_AdapterInfo;puts("");/*LONG RegOpenKeyEx(HKEY hKey,         // handle to open keyLPCTSTR lpSubKey,  // subkey nameDWORD ulOptions,   // reservedREGSAM samDesired, // security access maskPHKEY phkResult    // handle to open key);*/HKEY hKey = NULL;RegOpenKeyEx(HKEY_LOCAL_MACHINE, "HARDWARE\\DESCRIPTION\\System\\", 0, KEY_ALL_ACCESS, &hKey);/*LONG RegQueryValueEx(HKEY hKey,            // handle to keyLPCTSTR lpValueName,  // value nameLPDWORD lpReserved,   // reservedLPDWORD lpType,       // type bufferLPBYTE lpData,        // data bufferLPDWORD lpcbData      // size of data buffer);*/DWORD dwType = 0;BYTE szKeyValue[MAXBYTE] = {0};DWORD dwKeyValueLen = sizeof(szKeyValue);RegQueryValueEx(hKey, "SystemBiosVersion", NULL, &dwType, szKeyValue, &dwKeyValueLen);printf("Bios: %s", szKeyValue);puts("");system("pause");return 0;