VC操作注册表

在开发一个客户端的时候,需要获取到客户端的机器信息,比如CPU的信息、操作系统版本、客户端默认浏览器什么的,苦恼得很,狗咬乌龟——无从下牙。最后发现人家基本上都是在注册表里获取到这些底层信息的,有种当头一棒的感觉,于是自己也尝试用这种方法走走,当然,最后也如愿了!还是先说下我这次博客的目的吧——获取CPU信息。

首先,我们要知道CPU信息在注册表的路径:

HARDWARE\DESCRIPTION\SYSTEM\CentralProcessor\0

知道了注册表中的路径,接着可以上代码了:

///CPU信息获取
LONG result;//注册表打开标志位
LPCTSTR CpuPath = L"HARDWARE\\DESCRIPTION\\SYSTEM\\CentralProcessor\\0";//CPU在注册表的路径
//LPCTSTR browserPath = L"Software\\Microsoft\\Windows\Shell\\Associations\\UrlAssociations\\https\\UserChoice";
HKEY hKey;
DWORD type;   
DWORD dwSize;   
char  strBuf[100]; 
CString CPUType = _T("");
CString browserProgid = _T("");
//获取CPU信息
result = ::RegOpenKeyEx(HKEY_LOCAL_MACHINE,CpuPath,0,
	KEY_ALL_ACCESS,&hKey);
if(result == ERROR_SUCCESS)//打开注册表成功
{
	::RegQueryValueEx (hKey, L"ProcessorNameString", NULL,   
							&type, (BYTE *)strBuf, &dwSize);
	CPUType.Format(_T("%s"),strBuf);//CPU型号
}

RegCloseKey(hKey);
字符串:ProcessorNameString,这个是CPU名称的键,方法:RegQueryValueEx,用于查询CPU名称键ProcessorNameString对应的值。

CPUType便是最终想要的结果,如截图:


当然啦,获取上图的其他信息,如内存大小、IE版本、默认浏览器等,也可以用这样的办法来获取,大同小于的;

如默认浏览器:注册表地址:

Software\Microsoft\Windows\Shell\Associations\UrlAssociations\https\UserChoice

但是,这个比获取CPU信息稍微要复杂点,如有需要可留言给我哦!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值