QQ登录

只需一步,快速开始

208上位机VC MFC系统CPU主频名称相关参数获取

[ 复制链接 ]

208上位机VC MFC系统CPU主频名称相关参数获取

208上位机VC MFC系统CPU主频名称相关参数获取
208上位机VC MFC系统CPU主频名称相关参数获取
功能展示
获取电脑系统CPU相关的参数如主频制造商等可以进行相关功能的判断,比如是否能运行我们开发的程序,我们当前例程实现系统CPU名称厂商主频CPU个数等相关参数的获取,效果如图;
要点提示
一.CPU的名称与生产厂商可以通过读取注册表获取,在注册表位置"HKEY_LOCAL_MACHINE\\HARDWARE\\DESCRIPTION\\System\\CentralProcessor\\0";
CPU的名称键名为:ProcessorNameString;
CPU的标识键名为:Identifier;
CPU的制造商键名为:VendorIdentifier;
二. CPU是否支持3DNow可以用函数IsProcessorFeaturePresent(7),7对应PF_3DNOW_INSTRUCTIONS_AVAILABLE;
三. CPU是否支持MMX可以用函数IsProcessorFeaturePresent(3),3对应PF_MMX_INSTRUCTIONS_AVAILABLE;
四. CPU提供安全特性与否可以用函数::GetSystemMetrics(SM_SECURE);
要注意的是在WIN7系统上进行注册表的读取,程序得具有管理员操作权限.管理员权限的获取方法可以参数例程的演示视频学习
实现功能
1.新建基于对话框的应用程序
2.拖拽一列表框ID为IDC_LIST1用于显示获得的信息;依次拖拽按钮控件<CPU名称><CPU标识><CPU厂商><CPU主频><CPU个数><CPU支持3DNow?><CPU支持MMX?><CPU提供安全功能?><CPU具有抵挡处理器?>关联函数实现相应功能;下面为按钮函数体部分:
  1. void CGkbc8Dlg::OnCpuname()
  2. {
  3.         m_List.ResetContent();//清空内容
  4.         m_List.SetHorizontalExtent(600);//长度设置
  5.         HKEY hKey;
  6.         LPCTSTR StrKey="HARDWARE\\DESCRIPTION\\System\\CentralProcessor\\0";
  7.         if (ERROR_SUCCESS==::RegOpenKeyEx(HKEY_LOCAL_MACHINE,StrKey,NULL,KEY_ALL_ACCESS,&hKey))
  8.         {
  9.                 DWORD dwSize=255,dwType=REG_SZ;
  10.                 char String[256];        
  11.                 LPCSTR KeyValue="ProcessorNameString";
  12.                 if (ERROR_SUCCESS==::RegQueryValueEx(hKey,KeyValue,0,&dwType,(BYTE *)String,&dwSize))
  13.                 {
  14.                         CString sText("CPU的名称为:");
  15.                         sText+=String;
  16.                         m_List.InsertString(0,sText);
  17.                 }
  18.                 ::RegCloseKey(hKey);
  19.         }
  20. }
复制代码
  1. void CGkbc8Dlg::OnCputag()
  2. {
  3.         HKEY hKey;
  4.         LPCTSTR StrKey="HARDWARE\\DESCRIPTION\\System\\CentralProcessor\\0";
  5.         if (ERROR_SUCCESS==::RegOpenKeyEx(HKEY_LOCAL_MACHINE,StrKey,NULL,KEY_ALL_ACCESS,&hKey))
  6.         {
  7.                 DWORD dwSize=255,dwType=REG_SZ;
  8.                 char String[256];        
  9.                 LPCSTR KeyValue="Identifier";
  10.                 if (ERROR_SUCCESS==::RegQueryValueEx(hKey,KeyValue,0,&dwType,(BYTE *)String,&dwSize))
  11.                 {
  12.                         CString sText("CPU的标识为:");
  13.                         sText+=String;
  14.                         m_List.InsertString(0,sText);
  15.                 }
  16.                 ::RegCloseKey(hKey);
  17.         }
  18. }
  19. void CGkbc8Dlg::OnCpumanu()
  20. {
  21.         HKEY hKey;
  22.         LPCTSTR StrKey="HARDWARE\\DESCRIPTION\\System\\CentralProcessor\\0";
  23.         if (ERROR_SUCCESS==::RegOpenKeyEx(HKEY_LOCAL_MACHINE,StrKey,NULL,KEY_ALL_ACCESS,&hKey))
  24.         {
  25.                 DWORD dwSize=255,dwType=REG_SZ;
  26.                 char String[256];        
  27.                 LPCSTR KeyValue="VendorIdentifier";
  28.                 if (ERROR_SUCCESS==::RegQueryValueEx(hKey,KeyValue,0,&dwType,(BYTE *)String,&dwSize))
  29.                 {
  30.                         CString sText("CPU的制造商为:");
  31.                         sText+=String;
  32.                         m_List.InsertString(0,sText);
  33.                 }
  34.                 ::RegCloseKey(hKey);
  35.         }}
复制代码
其他函数体可下载例程查看学习
我们来演示下功能实现的整个过程
请点击此处下载

请先注册会员后在进行下载

已注册会员,请先登录后下载

文件名称:208.上位机VC MFC系统CPU主频名称相关参数获取.rar 
文件大小:156.63 KB  售价:10金币
下载权限: 不限 以上或 VIP会员   [购买捐助会员]   [充值积分]   有问题联系我

  

您的支持是我们创作的动力!  

  

您可花点闲钱积分自助任意充值

  

成为VIP会员 全站资源任意下载永久更新!


回复

使用道具 举报

快速回复 返回列表 客服中心 搜索