如何获取硬件信息

fly4free 2009-07-23 03:36:57
当然这个问题的答案,貌似哪里都有,不过貌似都不能满足我要求。


现在提另外一类问题:
现在的主板,可以支持多CPU,每个CPU可以多核,我用WMI查到两个结果,不过是双核的,如果是双CPU的话,是不是4个结果?怎么区分哪一个CPU的?(如果支持4个CPU的每个CPU是单核的,那么结果也是四个所以得此问……)

显卡也可以是多个,显示器也可以是多个,一个显卡接两个显示器, 两个显卡分别接1个或者2个显示器
多显卡,可能由一个要作为辅助,这种情况下,怎么区分那一个是主的?

获取 硬件信息难道没有API可用吗?我不想用WMI。

(是不是如果用API的话,那么每类设备的获取方式不一样?)


期待大侠的答复!
...全文
252 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
蒋晟 2009-07-24
  • 打赏
  • 举报
回复
那不是API,是C++编译器的一个内嵌原语,和其他汇编语句类似,都是直接编译成指令的,没有对Windows的库的调用。
marrco2005 2009-07-24
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 fly4free 的回复:]
5分啊~~~~
不知道是多久之前写的

哎,真想知道,那个 CPUID SDK  价格几何……,超贵的话,我可以死心了~哈哈
[/Quote]
http://www.cpuid-pro.com/pricing.php
这个是价格表,最便宜的59欧.这个价钱和升级服务有关
fly4free 2009-07-24
  • 打赏
  • 举报
回复
5分啊~~~~
不知道是多久之前写的

哎,真想知道,那个 CPUID SDK 价格几何……,超贵的话,我可以死心了~哈哈
fandh 2009-07-24
  • 打赏
  • 举报
回复
自己下载这个:cpu 主板 硬盘 网卡 BIOS等序列号取得 另外有加密解密的函数 含有源码,已经成动态连接库
地址是:http://download.csdn.net/source/1118204
不过,现在的CPU的ID什么的已经被封掉了,估计取不到!
fly4free 2009-07-24
  • 打赏
  • 举报
回复
1. 2楼说的是 SetupDiXXX 那种函数吗?

2. 请问5楼,命令码如何发送啊?
还有,我就是要写一个通用的检测硬件信息,不用太全面,只要获得精准的名称和能表示唯一的标识即可
没有一种标准的获得方法吗?

3. 9楼提到的东西貌似挺不错,但是怎么获得啊?要money吗?
marrco2005 2009-07-24
  • 打赏
  • 举报
回复
http://www.cpuid-pro.com/devkits.php

What the CPUID SDK Does and How.
The CPUID Software Development Kits offer a powerful set of hardware-related routines to any Windows application developed with any modern programming language. At the core of the CPUID kits is a powerful hardware detection engine based on a kernel-mode software driver.

A ready-to use solution.
The choice of the CPUID SDK firstly means a significant time saving in hardware-related developments. In only a few minutes, your application integrates a powerful and widely-tested detection engine, the same as the one that drives the popular CPU-Z.

A worldwide used hardware detection engine.
With more than 1.5 million copies downloaded every month, CPU-Z is the insurance that the detection engine you'll use in your applications is safe and reliable. Every major change in the detection engine is first included in CPU-Z for a validation test before it is added to the CPUID SDK, that ensures that you are always working with a completely debugged engine.

Industry support.
CPU-Z benefits from a great support of the hardware industry, resulting in the best source of information and a quick reactivity in the support of latest technologies.
wocow3 2009-07-23
  • 打赏
  • 举报
回复
void __cpuid(
int CPUInfo[4],
int InfoType
);
MS封装成API了
Practise_Think 2009-07-23
  • 打赏
  • 举报
回复
DeviceIOControl()
蒋晟 2009-07-23
  • 打赏
  • 举报
回复
微软的官方接口是WMI
一些硬件的驱动开发者没有开发WMI提供WMI接口,但是支持标准的即插即用接口,可以尝试直接发送命令码
一些硬件的驱动开发者开发了自己的SDK,需要联系厂商以获取SDK文档。
bohut 2009-07-23
  • 打赏
  • 举报
回复
GetSystemInfo()
GetSystemMetrics()
......
参考
http://www.moon-soft.com/download/soft/2313.htm
oyljerry 2009-07-23
  • 打赏
  • 举报
回复
通过WMI一般都是需要通过底层驱动,操作系统OS等来支持的,如果不支持WMI就不能取得对应的信息,所以很多时候WMI可能取不到一些信息。
有些可以用API,有些可能需要汇编,还有一些可能需要对应的驱动等
danxuezx 2009-07-23
  • 打赏
  • 举报
回复
用wmi获取不到的信息再想办法用API吧,为什么您不想用WMI呢?如果用API估计SetUp之类的函数比较多
healer_kx 2009-07-23
  • 打赏
  • 举报
回复
一般是有API的,偶尔有些信息,也可以用汇编获取,。

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧