windows下C/C++如何获得当前主机的信息:操作系统版本、系统类型、CUP、网卡、内存和磁盘的利用率? 30
请高手指点:windows下C/C++如何获取主机的信息?需要用到哪些知识?我查了一些资料有些是说读注册表,WMI,MSDN上查GetSystemInfoGetDevic...
请高手指点:windows下C/C++如何获取主机的信息?需要用到哪些知识?我查了一些资料有些是说读注册表,WMI,MSDN上查GetSystemInfo GetDeviceCaps等等,我想能不能直接用API函数,不知道我到底要从哪里入手,请高手指点一下,我要用到哪些知识能实现这个功能?
展开
4个回答
推荐于2016-03-04 · 知道合伙人数码行家
huanglenzhi
知道合伙人数码行家
向TA提问 私信TA
知道合伙人数码行家
采纳数:117538
获赞数:517199
长期从事计算机组装,维护,网络组建及管理。对计算机硬件、操作系统安装、典型网络设备具有详细认知。
向TA提问 私信TA
关注
展开全部
示例代码如下:
GetsysInfo.h:
#ifndef _H_GETSYSINFO
#define _H_GETSYSINFO
#pragma once
#include <afxtempl.h>
class GetSysInfo
{
public:
GetSysInfo(void);
~GetSysInfo(void);
public:
/********获取操作系统版本,Service pack版本、系统类型************/
void GetOSVersion(CString &strOSVersion,CString &strServiceVersion);
BOOL IsWow64();//判断是否为64位操作系统
/***********获取网卡数目和名字***********/
int GetInterFaceCount();
void GetInterFaceName(CString &InterfaceName,int pNum);
/***获取物理内存和虚拟内存大小***/
void GetMemoryInfo(CString &dwTotalPhys,CString &dwTotalVirtual);
/****获取CPU名称、内核数目、主频*******/
void GetCpuInfo(CString &chProcessorName,CString &chProcessorType,DWORD &dwNum,DWORD &dwMaxClockSpeed);
/****获取硬盘信息****/
void GetDiskInfo(DWORD &dwNum,CString chDriveInfo[]);
/****获取显卡信息*****/
void GetDisplayCardInfo(DWORD &dwNum,CString chCardName[]);
private:
CStringList Interfaces; //保存所有网卡的名字
CList < DWORD, DWORD &> Bandwidths; //各网卡的带宽
CList < DWORD, DWORD &> TotalTraffics; //各网卡的总流量
};
#endif
展开全部
据我所知API可以,有部分行。获取系统版本,系统类型就可以。获取cpu,网卡,内存等硬件信息,系统病没有提供这个API的,利用率就可以。注册表也没有记录硬件信息,注册表这个方法应该不可行。但是还有一些比较底层的C语言函数可以获取设备的信息,自己可以查查看。 还有一个办法就是调用其他软件的DLL。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
操作系统版本,CPU,内存直接可以用API查,网卡比较麻烦一点。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个应该有现成的库函数的,具体哪个我也不知道。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询