递归火山软件开发平台

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 火山 源码 类库
查看: 2835|回复: 9
打印 上一主题 下一主题

[类库封装] 谁帮我用C++写一个例子 付费

[复制链接]

10

主题

38

帖子

233

积分

中级会员

Rank: 3Rank: 3

积分
233
跳转到指定楼层
楼主
发表于 2024-2-7 11:40:25 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
取BIOS信息  制造商   序列号  发布日期  版本
回复

使用道具 举报

51

主题

224

帖子

1387

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
1387
沙发
发表于 2024-2-7 12:15:15 | 只看该作者
这不是挺简单的吗?
回复

使用道具 举报

10

主题

38

帖子

233

积分

中级会员

Rank: 3Rank: 3

积分
233
板凳
 楼主| 发表于 2024-2-7 13:06:57 | 只看该作者
xuezhq 发表于 2024-2-7 12:15
这不是挺简单的吗?

关键我不会呀Q332452295

回复

使用道具 举报

411

主题

2518

帖子

8304

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
8304
地板
发表于 2024-2-7 13:23:26 来自手机 | 只看该作者
火山貌似已经有了官方库获取硬件信息,下载最新火山找找
回复

使用道具 举报

10

主题

38

帖子

233

积分

中级会员

Rank: 3Rank: 3

积分
233
5#
 楼主| 发表于 2024-2-7 13:49:31 | 只看该作者
shuimiao 发表于 2024-2-7 13:23
火山貌似已经有了官方库获取硬件信息,下载最新火山找找

我要c++写的哦
回复

使用道具 举报

43

主题

314

帖子

3608

积分

论坛元老

Rank: 8Rank: 8

积分
3608
6#
发表于 2024-2-7 16:38:23 | 只看该作者
火山的源码就是c++
回复

使用道具 举报

36

主题

444

帖子

1550

积分

金牌会员

Rank: 6Rank: 6

积分
1550
QQ
7#
发表于 2024-2-7 19:12:11 | 只看该作者
  1. #include <iostream>
  2. #include <windows.h>
  3. #include <string>

  4. int main() {
  5.     DWORD bufferSize = 0;
  6.     BYTE* buffer = nullptr;
  7.     DWORD dataType = 0;
  8.     std::string biosInfo;

  9.     // 获取缓冲区大小
  10.     if (GetSystemFirmwareTable(FirmwareTableProviderSignature, FirmwareTableID, 0, &bufferSize) != ERROR_INSUFFICIENT_BUFFER) {
  11.         std::cerr << "无法获取缓冲区大小" << std::endl;
  12.         return 1;
  13.     }

  14.     // 分配缓冲区
  15.     buffer = new BYTE[bufferSize];

  16.     // 获取BIOS信息
  17.     if (GetSystemFirmwareTable(FirmwareTableProviderSignature, FirmwareTableID, buffer, &bufferSize) == ERROR_SUCCESS) {
  18.         // 解析BIOS信息
  19.         for (DWORD i = 0; i < bufferSize; i++) {
  20.             switch (dataType) {
  21.                 case 0: // 制造商
  22.                     if (buffer[i] == 0) {
  23.                         dataType = 1;
  24.                     } else {
  25.                         biosInfo += static_cast<char>(buffer[i]);
  26.                     }
  27.                     break;
  28.                 case 1: // 序列号
  29.                     if (buffer[i] == 0) {
  30.                         dataType = 2;
  31.                     } else {
  32.                         biosInfo += static_cast<char>(buffer[i]);
  33.                     }
  34.                     break;
  35.                 case 2: // 发布日期
  36.                     if (buffer[i] == 0) {
  37.                         dataType = 3;
  38.                     } else {
  39.                         biosInfo += static_cast<char>(buffer[i]);
  40.                     }
  41.                     break;
  42.                 case 3: // 版本
  43.                     if (buffer[i] == 0) {
  44.                         dataType = 4;
  45.                     } else {
  46.                         biosInfo += static_cast<char>(buffer[i]);
  47.                     }
  48.                     break;
  49.             }
  50.         }
  51.     } else {
  52.         std::cerr << "无法获取BIOS信息" << std::endl;
  53.         delete[] buffer;
  54.         return 1;
  55.     }

  56.     // 输出BIOS信息
  57.     std::cout << "制造商: " << biosInfo.substr(0, biosInfo.find('\0')) << std::endl;
  58.     std::cout << "序列号: " << biosInfo.substr(biosInfo.find('\0') + 1, biosInfo.find('\0', biosInfo.find('\0') + 1)) << std::endl;
  59.     std::cout << "发布日期: " << biosInfo.substr(biosInfo.find('\0', biosInfo.find('\0') + 1) + 1, biosInfo.find('\0', biosInfo.find('\0', biosInfo.find('\0') + 1) + 1)) << std::endl;
  60.     std::cout << "版本: " << biosInfo.substr(biosInfo.find('\0', biosInfo.find('\0', biosInfo.find('\0') + 1) + 1) + 1) << std::endl;

  61.     // 释放缓冲区
  62.     delete[] buffer;

  63.     return 0;
  64. }
复制代码
Q 75520266
回复

使用道具 举报

2

主题

139

帖子

2161

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
2161
8#
发表于 2024-2-7 20:16:09 | 只看该作者
直接@就能运行
回复

使用道具 举报

10

主题

62

帖子

629

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
629
9#
发表于 2024-2-8 06:05:02 | 只看该作者
这种简单有的裤就不好封装
回复

使用道具 举报

0

主题

20

帖子

524

积分

高级会员

Rank: 4

积分
524
10#
发表于 2024-2-8 15:51:45 | 只看该作者
现在流行AI写代码,找GPT、通义千问、文心一言等等,让AI写代码然后自己再稍微修改就行了。
回复

使用道具 举报

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

本版积分规则

QQ|Archiver|手机版|小黑屋|递归火山软件开发平台 ( 鄂ICP备18029190号 )

GMT+8, 2024-11-27 13:40 , Processed in 0.096776 second(s), 19 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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