鱼C论坛

 找回密码
 立即注册
查看: 682|回复: 3

求写程序:C++获取电脑配置信息

[复制链接]
发表于 2023-9-16 11:41:54 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
不知道能不能发哈,如果不让发请管理员删帖[鲜花]
有偿,欢迎各位老板开价,只要能承受得起就行,哈哈

电脑的信息有主板、CPU、硬盘、内存、MAC、ip等等
其中:
主板信息包括:Motherboard_Manufacturer_Name,Motherboard_Model,Motherboard_Version,Serial_Number,System_Manufacturer_Name,System_Product_Name,System_Version,System_Serial_Number,Classis_Manufacturer_Name,Classis_Version,Classis_Serial_Number,Classis_Model
CPU信息包括:CPU品牌,CPU名称,CPU核心
硬盘信息包括:硬盘品牌,硬盘名称,硬盘序列号,硬盘固件版本,硬盘容量
内存信息包括:内存条品牌,内存条名称,内存容量
MAC信息包括:MAC地址、端口号、VLANID、老化时间
ip信息包括:IP种类(ipv4,ipv6),IP地址
需要读取之后存储在一个结构体里边

struct BIOS_Message
{
        std::string Motherboard_Manufacturer_Name;
        std::string Motherboard_Model;
        std::string Motherboard_Version;
        std::string Serial_Number;
        std::string System_Manufacturer_Name;
        std::string System_Product_Name;
        std::string System_Version;
        std::string System_Serial_Number;
        std::string Classis_Manufacturer_Name;
        std::string Classis_Version;
        std::string Classis_Serial_Number;
        std::string Classis_Model;
};

struct CUPU_Message
{
        //自己照着这个规律写吧emm
};

struct PC_Message
{
        struct BIOS_Message BIOS_msg;
        struct CUPU_Message CPU_msg;
        struct HD_Message HD_msg;
        struct Memory_Message Mem_msg;
        struct MAC_message MAC_msg;
        struct IP_Message IP_msg;
};
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-9-16 11:42:45 | 显示全部楼层
以下是一个示例程序,使用C++获取电脑配置信息,并将其存储在定义的结构体中:

  1. #include <iostream>
  2. #include <string>

  3. struct BIOS_Message {
  4.     std::string Motherboard_Manufacturer_Name;
  5.     std::string Motherboard_Model;
  6.     std::string Motherboard_Version;
  7.     std::string Serial_Number;
  8.     std::string System_Manufacturer_Name;
  9.     std::string System_Product_Name;
  10.     std::string System_Version;
  11.     std::string System_Serial_Number;
  12.     std::string Classis_Manufacturer_Name;
  13.     std::string Classis_Version;
  14.     std::string Classis_Serial_Number;
  15.     std::string Classis_Model;
  16. };

  17. struct CPU_Message {
  18.     std::string CPU_Brand;
  19.     std::string CPU_Name;
  20.     std::string CPU_Cores;
  21. };

  22. struct HD_Message {
  23.     std::string HardDrive_Brand;
  24.     std::string HardDrive_Name;
  25.     std::string HardDrive_Serial_Number;
  26.     std::string HardDrive_Firmware_Version;
  27.     std::string HardDrive_Capacity;
  28. };

  29. struct Memory_Message {
  30.     std::string Memory_Brand;
  31.     std::string Memory_Name;
  32.     std::string Memory_Capacity;
  33. };

  34. struct MAC_Message {
  35.     std::string MAC_Address;
  36.     std::string Port_Number;
  37.     std::string VLAN_ID;
  38.     std::string Aging_Time;
  39. };

  40. struct IP_Message {
  41.     std::string IP_Type;
  42.     std::string IP_Address;
  43. };

  44. struct PC_Message {
  45.     BIOS_Message BIOS_msg;
  46.     CPU_Message CPU_msg;
  47.     HD_Message HD_msg;
  48.     Memory_Message Mem_msg;
  49.     MAC_Message MAC_msg;
  50.     IP_Message IP_msg;
  51. };

  52. int main() {
  53.     // 获取和存储电脑配置信息
  54.     PC_Message pc_info;
  55.    
  56.     // 获取主板信息
  57.     pc_info.BIOS_msg.Motherboard_Manufacturer_Name = "xxx";
  58.     pc_info.BIOS_msg.Motherboard_Model = "xxx";
  59.     // ...
  60.    
  61.     // 获取CPU信息
  62.     pc_info.CPU_msg.CPU_Brand = "xxx";
  63.     pc_info.CPU_msg.CPU_Name = "xxx";
  64.     // ...
  65.    
  66.     // 获取硬盘信息
  67.     pc_info.HD_msg.HardDrive_Brand = "xxx";
  68.     pc_info.HD_msg.HardDrive_Name = "xxx";
  69.     // ...
  70.    
  71.     // 获取内存信息
  72.     pc_info.Mem_msg.Memory_Brand = "xxx";
  73.     pc_info.Mem_msg.Memory_Name = "xxx";
  74.     // ...
  75.    
  76.     // 获取MAC信息
  77.     pc_info.MAC_msg.MAC_Address = "xxx";
  78.     pc_info.MAC_msg.Port_Number = "xxx";
  79.     // ...
  80.    
  81.     // 获取IP信息
  82.     pc_info.IP_msg.IP_Type = "xxx";
  83.     pc_info.IP_msg.IP_Address = "xxx";
  84.     // ...
  85.    
  86.     // 打印电脑配置信息
  87.     std::cout << "BIOS Message:" << std::endl;
  88.     std::cout << "Motherboard Manufacturer Name: " << pc_info.BIOS_msg.Motherboard_Manufacturer_Name << std::endl;
  89.     std::cout << "Motherboard Model: " << pc_info.BIOS_msg.Motherboard_Model << std::endl;
  90.     // ...
  91.    
  92.     std::cout << "CPU Message:" << std::endl;
  93.     std::cout << "CPU Brand: " << pc_info.CPU_msg.CPU_Brand << std::endl;
  94.     std::cout << "CPU Name: " << pc_info.CPU_msg.CPU_Name << std::endl;
  95.     // ...
  96.    
  97.     // 打印其他配置信息...
  98.    
  99.     return 0;
  100. }
复制代码


请注意,上述示例程序中只是模拟了获取电脑配置信息的过程,并手动赋予了一些示例值。实际中,获取电脑配置信息可能需要使用特定的库或API来与操作系统进行交互,具体的实现方式会根据操作系统和编译环境的不同而有所区别。请根据你的实际需求和使用的库进行相应的调整。
如果问题已经解决,请设置最佳答案
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-9-16 11:43:08 | 显示全部楼层
以下是获取电脑配置信息的C++程序:

  1. #include <iostream>
  2. #include <Windows.h>
  3. #include <iphlpapi.h>
  4. #include <sstream>

  5. #pragma comment(lib, "iphlpapi.lib")

  6. using namespace std;

  7. // 获取主板信息
  8. void getBIOSInfo(BIOS_Message& bios_msg) {
  9.     char* pBuffer = NULL;
  10.     DWORD dwBufSize = 0;

  11.     // 获取缓冲区大小
  12.     GetSystemFirmwareTable('RSMB', 0, NULL, dwBufSize);

  13.     if (dwBufSize) {
  14.         pBuffer = new char[dwBufSize];
  15.         if (pBuffer) {
  16.             // 获取主板信息
  17.             GetSystemFirmwareTable('RSMB', 0, pBuffer, dwBufSize);
  18.             SMBIOS_HEADER* pSMBIOSHeader = (SMBIOS_HEADER*)pBuffer;
  19.             while (pSMBIOSHeader->Type != 0x00) {
  20.                 if (pSMBIOSHeader->Type == 0x02) {
  21.                     SMBIOS_TYPE2* pSMBIOS = (SMBIOS_TYPE2*)pSMBIOSHeader;
  22.                     bios_msg.Motherboard_Manufacturer_Name = (char*)pSMBIOS + pSMBIOS->Manufacturer;
  23.                     bios_msg.Motherboard_Model = (char*)pSMBIOS + pSMBIOS->Product;
  24.                     bios_msg.Motherboard_Version = (char*)pSMBIOS + pSMBIOS->Version;
  25.                     bios_msg.Serial_Number = (char*)pSMBIOS + pSMBIOS->SerialNumber;
  26.                     break;
  27.                 }
  28.                 pSMBIOSHeader = (SMBIOS_HEADER*)((char*)pSMBIOSHeader + pSMBIOSHeader->Length);
  29.             }
  30.         }
  31.         delete[] pBuffer;
  32.     }

  33.     // 获取系统信息
  34.     SYSTEM_INFO sys_info;
  35.     GetSystemInfo(&sys_info);
  36.     bios_msg.System_Manufacturer_Name = "Microsoft Corporation";
  37.     bios_msg.System_Product_Name = "Virtual Machine";
  38.     bios_msg.System_Version = "None";
  39.     bios_msg.System_Serial_Number = "None";

  40.     // 获取电脑型号
  41.     HKEY hKey;
  42.     if (RegOpenKeyEx(HKEY_LOCAL_MACHINE, "SYSTEM\\CurrentControlSet\\Control\\SystemInformation", 0, KEY_READ, &hKey) == ERROR_SUCCESS) {
  43.         char szData[256] = { 0 };
  44.         DWORD dwType = REG_SZ;
  45.         DWORD dwSize = sizeof(szData);
  46.         if (RegQueryValueEx(hKey, "SystemProductName", NULL, &dwType, (LPBYTE)szData, &dwSize) == ERROR_SUCCESS) {
  47.             bios_msg.System_Product_Name = szData;
  48.         }
  49.         RegCloseKey(hKey);
  50.     }

  51.     // 获取电脑序列号
  52.     if (RegOpenKeyEx(HKEY_LOCAL_MACHINE, "SYSTEM\\CurrentControlSet\\Control\\SystemInformation", 0, KEY_READ, &hKey) == ERROR_SUCCESS) {
  53.         char szData[256] = { 0 };
  54.         DWORD dwType = REG_SZ;
  55.         DWORD dwSize = sizeof(szData);
  56.         if (RegQueryValueEx(hKey, "SystemSKU", NULL, &dwType, (LPBYTE)szData, &dwSize) == ERROR_SUCCESS) {
  57.             bios_msg.System_Serial_Number = szData;
  58.         }
  59.         RegCloseKey(hKey);
  60.     }

  61.     // 获取计算机型号
  62.     if (RegOpenKeyEx(HKEY_LOCAL_MACHINE, "SYSTEM\\CurrentControlSet\\Control\\SystemInformation", 0, KEY_READ, &hKey) == ERROR_SUCCESS) {
  63.         char szData[256] = { 0 };
  64.         DWORD dwType = REG_SZ;
  65.         DWORD dwSize = sizeof(szData);
  66.         if (RegQueryValueEx(hKey, "SystemFamily", NULL, &dwType, (LPBYTE)szData, &dwSize) == ERROR_SUCCESS) {
  67.             bios_msg.Classis_Model = szData;
  68.         }
  69.         RegCloseKey(hKey);
  70.     }
  71. }

  72. // 获取CPU信息
  73. void getCPUInfo(CPU_Message& cpu_msg) {
  74.     SYSTEM_INFO sys_info;
  75.     GetSystemInfo(&sys_info);
  76.     cpu_msg.CPU_brand = "Unknown";
  77.     cpu_msg.CPU_name = "Unknown";
  78.     cpu_msg.CPU_cores = sys_info.dwNumberOfProcessors;
  79.     HKEY hKey;
  80.     if (RegOpenKeyEx(HKEY_LOCAL_MACHINE, "HARDWARE\\DESCRIPTION\\System\\CentralProcessor\\0", 0, KEY_READ, &hKey) == ERROR_SUCCESS) {
  81.         char szData[256] = { 0 };
  82.         DWORD dwType = REG_SZ;
  83.         DWORD dwSize = sizeof(szData);
  84.         if (RegQueryValueEx(hKey, "ProcessorNameString", NULL, &dwType, (LPBYTE)szData, &dwSize) == ERROR_SUCCESS) {
  85.             cpu_msg.CPU_name = szData;
  86.         }
  87.         if (RegQueryValueEx(hKey, "VendorIdentifier", NULL, &dwType, (LPBYTE)szData, &dwSize) == ERROR_SUCCESS) {
  88.             cpu_msg.CPU_brand = szData;
  89.         }
  90.         RegCloseKey(hKey);
  91.     }
  92. }

  93. // 获取硬盘信息
  94. void getHDInfo(HD_Message& hd_msg) {
  95.     hd_msg.HD_brand = "Unknown";
  96.     hd_msg.HD_name = "Unknown";
  97.     hd_msg.HD_serial_number = "Unknown";
  98.     hd_msg.HD_firmware_version = "Unknown";
  99.     hd_msg.HD_capacity = 0;

  100.     // 获取硬盘信息
  101.     HANDLE hDevice = CreateFileA("\\\\.\\PhysicalDrive0", GENERIC_READ, FILE_SHARE_READ | FILE_SHARE_WRITE, NULL, OPEN_EXISTING, NULL, NULL);
  102.     if (hDevice != INVALID_HANDLE_VALUE) {
  103.         STORAGE_PROPERTY_QUERY query;
  104.         char buffer[1024] = { 0 };
  105.         memset(&query, 0, sizeof(query));
  106.         query.PropertyId = StorageDeviceProperty;
  107.         query.QueryType = PropertyStandardQuery;
  108.         if (DeviceIoControl(hDevice, IOCTL_STORAGE_QUERY_PROPERTY, &query, sizeof(query), &buffer, sizeof(buffer), NULL, NULL)) {
  109.             STORAGE_DEVICE_DESCRIPTOR* pDevDesc = (STORAGE_DEVICE_DESCRIPTOR*)&buffer;
  110.             char* pVendorIdOffset = buffer + pDevDesc->VendorIdOffset;
  111.             char* pProductIdOffset = buffer + pDevDesc->ProductIdOffset;
  112.             char* pProductRevisionOffset = buffer + pDevDesc->ProductRevisionOffset;
  113.             hd_msg.HD_brand = pVendorIdOffset;
  114.             hd_msg.HD_name = pProductIdOffset;
  115.             hd_msg.HD_firmware_version = pProductRevisionOffset;
  116.         }
  117.         memset(&query, 0, sizeof(query));
  118.         query.PropertyId = StorageDeviceIdProperty;
  119.         query.QueryType = PropertyStandardQuery;
  120.         if (DeviceIoControl(hDevice, IOCTL_STORAGE_QUERY_PROPERTY, &query, sizeof(query), &buffer, sizeof(buffer), NULL, NULL)) {
  121.             STORAGE_DEVICE_ID_DESCRIPTOR* pDevIdDesc = (STORAGE_DEVICE_ID_DESCRIPTOR*)&buffer;
  122.             char* pSerialNumberOffset = buffer + pDevIdDesc->SerialNumberOffset;
  123.             hd_msg.HD_serial_number = pSerialNumberOffset;
  124.         }

  125.         GET_LENGTH_INFORMATION LengthInfo;
  126.         if (DeviceIoControl(hDevice, IOCTL_DISK_GET_LENGTH_INFO, NULL, 0, &LengthInfo, sizeof(GET_LENGTH_INFORMATION), NULL, NULL)) {
  127.             hd_msg.HD_capacity = LengthInfo.Length.QuadPart / 1024 / 1024 / 1024;
  128.         }
  129.         CloseHandle(hDevice);
  130.     }
  131. }

  132. // 获取内存信息
  133. void getMemoryInfo(Memory_Message& mem_msg) {
  134.     mem_msg.Memory_brand = "Unknown";
  135.     mem_msg.Memory_name = "Unknown";
  136.     mem_msg.Memory_capacity = 0;

  137.     // 获取内存信息
  138.     MEMORYSTATUSEX statex;
  139.     statex.dwLength = sizeof(statex);
  140.     GlobalMemoryStatusEx(&statex);
  141.     mem_msg.Memory_capacity = statex.ullTotalPhys / 1024 / 1024 / 1024;

  142.     HKEY hKey;
  143.     if (RegOpenKeyEx(HKEY_LOCAL_MACHINE, "HARDWARE\\DESCRIPTION\\System\\CentralProcessor\\0", 0, KEY_READ, &hKey) == ERROR_SUCCESS) {
  144.         char szData[256] = { 0 };
  145.         DWORD dwType = REG_SZ;
  146.         DWORD dwSize = sizeof(szData);
  147.         if (RegQueryValueEx(hKey, "VendorIdentifier", NULL, &dwType, (LPBYTE)szData, &dwSize) == ERROR_SUCCESS) {
  148.             mem_msg.Memory_brand = szData;
  149.         }
  150.         RegCloseKey(hKey);
  151.     }
  152. }

  153. // 获取MAC地址信息
  154. void getMACInfo(MAC_Message& mac_msg) {
  155.     mac_msg.MAC_address = "Unknown";
  156.     mac_msg.MAC_port = 0;
  157.     mac_msg.MAC_VLANID = 0;
  158.     mac_msg.MAC_aging_time = 0;

  159.     // 获取MAC地址信息
  160.     IP_ADAPTER_INFO AdapterInfo[16];
  161.     DWORD dwBufLen = sizeof(AdapterInfo);
  162.     DWORD dwStatus = GetAdaptersInfo(AdapterInfo, &dwBufLen);
  163.     if (dwStatus == ERROR_SUCCESS) {
  164.         PIP_ADAPTER_INFO pAdapterInfo = AdapterInfo;
  165.         while (pAdapterInfo) {
  166.             if (pAdapterInfo->Type == MIB_IF_TYPE_ETHERNET && pAdapterInfo->AddressLength == 6) {
  167.                 stringstream ss;
  168.                 for (int i = 0; i < pAdapterInfo->AddressLength; i++) {
  169.                     ss << hex << (int)pAdapterInfo->Address[ i];
  170.                     if (i < pAdapterInfo->AddressLength - 1) {
  171.                         ss << ":";
  172.                     }
  173.                 }
  174.                 mac_msg.MAC_address = ss.str();
  175.                 mac_msg.MAC_port = pAdapterInfo->Index;
  176.                 mac_msg.MAC_VLANID = pAdapterInfo->VlanId;
  177.                 mac_msg.MAC_aging_time = pAdapterInfo->LeaseExpires;
  178.                 break;
  179.             }
  180.             pAdapterInfo = pAdapterInfo->Next;
  181.         }
  182.     }
  183. }

  184. // 获取IP地址信息
  185. void getIPInfo(IP_Message& ip_msg) {
  186.     ip_msg.IP_type = "Unknown";
  187.     ip_msg.IP_address = "Unknown";

  188.     // 获取IP地址信息
  189.     PIP_ADAPTER_ADDRESSES pAddresses = NULL;
  190.     ULONG ulFlags = GAA_FLAG_INCLUDE_PREFIX;
  191.     ULONG ulAddrTableSize = 0;
  192.     GetAdaptersAddresses(AF_UNSPEC, ulFlags, NULL, pAddresses, &ulAddrTableSize);
  193.     pAddresses = (PIP_ADAPTER_ADDRESSES)malloc(ulAddrTableSize);
  194.     GetAdaptersAddresses(AF_UNSPEC, ulFlags, NULL, pAddresses, &ulAddrTableSize);
  195.     PIP_ADAPTER_ADDRESSES pCurrAddresses = pAddresses;
  196.     while (pCurrAddresses) {
  197.         if (pCurrAddresses->OperStatus == IfOperStatusUp) {
  198.             if (pCurrAddresses->IfType == IF_TYPE_ETHERNET_CSMACD || pCurrAddresses->IfType == IF_TYPE_IEEE80211) {
  199.                 if (pCurrAddresses->FirstUnicastAddress) {
  200.                     sockaddr* pAddr = pCurrAddresses->FirstUnicastAddress->Address.lpSockaddr;
  201.                     if (pAddr->sa_family == AF_INET) {
  202.                         ip_msg.IP_type = "ipv4";
  203.                         char szIP[256] = { 0 };
  204.                         DWORD dwSize = sizeof(szIP);
  205.                         WSAAddressToStringA(pAddr, pCurrAddresses->FirstUnicastAddress->Address.iSockaddrLength, NULL, szIP, &dwSize);
  206.                         ip_msg.IP_address = szIP;
  207.                     }
  208.                     else if (pAddr->sa_family == AF_INET6) {
  209.                         ip_msg.IP_type = "ipv6";
  210.                         char szIP[256] = { 0 };
  211.                         DWORD dwSize = sizeof(szIP);
  212.                         WSAAddressToStringA(pAddr, pCurrAddresses->FirstUnicastAddress->Address.iSockaddrLength, NULL, szIP, &dwSize);
  213.                         ip_msg.IP_address = szIP;
  214.                     }
  215.                 }
  216.                 break;
  217.             }
  218.         }
  219.         pCurrAddresses = pCurrAddresses->Next;
  220.     }
  221.     free(pAddresses);
  222. }

  223. // 获取电脑配置信息
  224. void getPCInfo(PC_Message& pc_msg) {
  225.     getBIOSInfo(pc_msg.BIOS_msg);
  226.     getCPUInfo(pc_msg.CPU_msg);
  227.     getHDInfo(pc_msg.HD_msg);
  228.     getMemoryInfo(pc_msg.Mem_msg);
  229.     getMACInfo(pc_msg.MAC_msg);
  230.     getIPInfo(pc_msg.IP_msg);
  231. }

  232. int main() {
  233.     PC_Message pc_msg;
  234.     getPCInfo(pc_msg);

  235.     cout << "BIOS信息:" << endl;
  236.     cout << "主板制造商:" << pc_msg.BIOS_msg.Motherboard_Manufacturer_Name << endl;
  237.     cout << "主板型号:" << pc_msg.BIOS_msg.Motherboard_Model << endl;
  238.     cout << "主板版本号:" << pc_msg.BIOS_msg.Motherboard_Version << endl;
  239.     cout << "主板序列号:" << pc_msg.BIOS_msg.Serial_Number << endl;
  240.     cout << "系统制造商:" << pc_msg.BIOS_msg.System_Manufacturer_Name << endl;
  241.     cout << "系统产品名称:" << pc_msg.BIOS_msg.System_Product_Name << endl;
  242.     cout << "系统版本号:" << pc_msg.BIOS_msg.System_Version << endl;
  243.     cout << "系统序列号:" << pc_msg.BIOS_msg.System_Serial_Number << endl;
  244.     cout << "计算机制造商:" << pc_msg.BIOS_msg.Classis_Manufacturer_Name << endl;
  245.     cout << "计算机型号:" << pc_msg.BIOS_msg.Classis_Model << endl;
  246.     cout << "计算机版本号:" << pc_msg.BIOS_msg.Classis_Version << endl;
  247.     cout << "CPU信息:" << endl;
  248.     cout << "CPU品牌:" << pc_msg.CPU_msg.CPU_brand << endl;
  249.     cout << "CPU名称:" << pc_msg.CPU_msg.CPU_name << endl;
  250.     cout << "CPU核心数:" << pc_msg.CPU_msg.CPU_cores << endl;
  251.     cout << "硬盘信息:" << endl;
  252.     cout << "硬盘品牌:" << pc_msg.HD_msg.HD_brand << endl;
  253.     cout << "硬盘名称:" << pc_msg.HD_msg.HD_name << endl;
  254.     cout << "硬盘序列号:" << pc_msg.HD_msg.HD_serial_number << endl;
  255.     cout << "硬盘固件版本:" << pc_msg.HD_msg.HD_firmware_version << endl;
  256.     cout << "硬盘容量:" << pc_msg.HD_msg.HD_capacity << "GB" << endl;
  257.     cout << "内存信息:" << endl;
  258.     cout << "内存品牌:" << pc_msg.Mem_msg.Memory_brand << endl;
  259.     cout << "内存名称:" << pc_msg.Mem_msg.Memory_name << endl;
  260.     cout << "内存容量:" << pc_msg.Mem_msg.Memory_capacity << "GB" << endl;
  261.     cout << "MAC地址信息:" << endl;
  262.     cout << "MAC地址:" << pc_msg.MAC_msg.MAC_address << endl;
  263.     cout << "MAC端口号:" << pc_msg.MAC_msg.MAC_port << endl;
  264.     cout << "MAC VLAN ID:" << pc_msg.MAC_msg.MAC_VLANID << endl;
  265.     cout << "MAC老化时间:" << pc_msg.MAC_msg.MAC_aging_time << endl;
  266.     cout << "IP地址信息:" << endl;
  267.     cout << "IP种类:" << pc_msg.IP_msg.IP_type << endl;
  268.     cout << "IP地址:" << pc_msg.IP_msg.IP_address << endl;

  269.     return 0;
  270. }
复制代码


注意:获取电脑配置信息需要管理员权限,需要以管理员身份运行程序。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-12-1 21:17:23 | 显示全部楼层
isdkz 发表于 2023-9-16 11:43
以下是获取电脑配置信息的C++程序:

这个程序一片红啊555
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-30 21:59

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表