如何使用 VB6 获取硬件信息,例如 CPU 名称、总 RAM 等?

qJa*_*ake 3 vb6 winapi

标题几乎说明了一切。我需要使用 VB6 获取一些硬件信息,例如 CPU 信息和总 RAM。理想情况下,它会为 CPU 返回类似以下内容:

英特尔酷睿 2 四核 Q8500 2.66 GHz

对于 RAM,一些简单的东西,例如计算机总共拥有的 MB 量的整数。

Tho*_*mas 6

如果有兴趣的话,用普通的C语言:

#include <intrin.h>

int cpuInfo[4] = {-1};
char CPUBrandString[0x40];

memset(CPUBrandString, 0, sizeof(CPUBrandString));

__cpuid(cpuInfo, 0x80000002);
memcpy(CPUBrandString, cpuInfo, sizeof(cpuInfo));

__cpuid(cpuInfo, 0x80000003);
memcpy(CPUBrandString + 16, cpuInfo, sizeof(cpuInfo));

__cpuid(cpuInfo, 0x80000004);
memcpy(CPUBrandString + 32, cpuInfo, sizeof(cpuInfo));
Run Code Online (Sandbox Code Playgroud)

  • CPU 品牌字符串不保证以空终止符结尾,因此如果要在任何需要空终止字符串的上下文中使用“CPUBrandString”,则“CPUBrandString”的长度应为 0x41 个字符,而不是 0x40。 (2认同)