C/C++获得CPUID和系统盘序列号源码能翻译为火山代码吗
C/C++ 怎么最简单获得CPU ID 和 系统盘 序列号希望有大佬能将两份源码翻译成火山代码并分享上来,谢谢!!:handshake
源码1:-------------------------------------------------------------------
#include <stdio.h>
#include <windows.h>
#include <cpuid.h>
int main()
{
unsigned int eax = 0, ebx = 0, ecx = 0, edx = 0;
__cpuid(1, eax, ebx, ecx, edx);
printf("ProcessorId:%08X%08X\n", edx, eax); // cpuid 格式同 wmic cpu get processorid
printf("CPU Features: %08X-%08X-%08X-%08X\n", eax, ebx, ecx, edx);
DWORD serial_number = 0;
char file_system_name = "";
if (GetVolumeInformation("C:\\", NULL, MAX_PATH + 1, &serial_number,
NULL, NULL, file_system_name, MAX_PATH + 1))
printf("Hard Disk ID: %08X\t%s\n", serial_number, file_system_name);
else
perror("GetVolumeInformation");
}
源码2:-------------------------------------------------------------------
#include <windows.h>#include <stdio.h>int main(){ UUID uuid; UuidCreate(&uuid); // 使用 Windows API 中的 UuidCreate() 函数来生成 UUID //UUID: 07e4bca4-61f2-4485-aed2-9fea6de42d48 // 需要链接库 librpcrt4.a char *uuid_str; UuidToStringA(&uuid, (RPC_CSTR*)&uuid_str); // 为 UUID 字符串分配动态内存 printf("UUID: %s\n", uuid_str); RpcStringFreeA((RPC_CSTR*)&uuid_str); // 释放 UUID 字符串动态内存 return 0;}
转自吾爱论坛
源码2:-------------------------------------------------------------------
#include <windows.h>
#include <stdio.h>
int main()
{
UUID uuid;
UuidCreate(&uuid); // 使用 Windows API 中的 UuidCreate() 函数来生成 UUID
//UUID: 07e4bca4-61f2-4485-aed2-9fea6de42d48 // 需要链接库 librpcrt4.a
char *uuid_str;
UuidToStringA(&uuid, (RPC_CSTR*)&uuid_str); // 为 UUID 字符串分配动态内存
printf("UUID: %s\n", uuid_str);
RpcStringFreeA((RPC_CSTR*)&uuid_str); // 释放 UUID 字符串动态内存
return 0;
} 你可以看下 硬件及键鼠和钩子操作库 这个库里面有硬件操作,可以看看有没有你想要的。
如果有现成的就没必要费劲封了
自己下载看下对不对
363832663 发表于 2023-7-31 14:18
自己下载看下对不对
谢谢老师,有空我试一下 <火山程序 类型 = "通常" 版本 = 1 />
变量 eax <类型 = "整数">
// __MACHINEX86_X64(void __cpuid(int, int))
// 你帖的参数不对
@ __cpuid(@<eax>,1);
调试输出 (eax , eax , eax , eax )
复制过来的,c语言全看不懂
页:
[1]