我爱黑客网首页 设为首页
加入收藏
联系我们
 首 页  技术文章 下载中心 站长学院 交流论坛
 软件:
 文章:        教程:
 推荐: 我爱黑客网论坛
 
 
 
 
   
黑软: Q Q 软件 木马间谍 探嗅监听 溢出攻击 加密解密 漏洞扫描 脚本注入 远程控制 综合利用 聊天工具  
 
技术文章: 爱黑新闻 | 黑客攻防 | 网络技术 | 程序设计 | 系统操作 | 本站动态 | 业界动态 | 安全公告 | 病毒公告 | 八卦黑客
 
 
您当前的位置:我爱黑客 -> 程序设计 -> C++ -> C++系统 -> 文章内容  
栏目导航
· C++综合 · C++通信
· C++视图 · C++图象
· C++系统 · C++多媒体
· C++界面 · C++文件
· C++数据库 · C++网络
热门文章
· 10分钟完成一个USB驱动..
· 通过消息实现自定义输..
· 防止因系统崩溃而丢失..
· 文本框控件的消息及应..
· 获取信息的有关Window..
· 如何自动移去系统托盘..
· 读取其他应用程序中Li..
· 如何实现大图标风格的..
· BCB6/Delphi7下完美调..
· 虚拟设备驱动程序的设..
· 用游戏操纵杆摸拟鼠标..
· 如何读写硬件端口
相关文章

· 如何正确手工剿灭QQ..
· 木马是如何编写的
· 如何利用CB5.0 创建..
· 如何和Whois++网连接..
· 如何编写用TCP/IP的..
· 如何使tcp包和udp包..
· 如何提高数据库的访..
· 如何利用C++ Builde..
· 如何取得程序本身版..
· 如何自动移去系统托..
查看更多与如何在C++Builder中检测硬件相关内容

如何在C++Builder中检测硬件
作者:幽火  来源:www.5ihack.com  发布时间:2007-1-8 17:35:27  发布人:ghostfire

减小字体 增大字体

  在我们编写的程序中常常要和硬件打交道,那么如何在程序中确定系统中是否有该 设备,它的运行状态又是怎样的呢?对于初学者来说,这个问题常常不好解决,其实只需 简单地利用几个API函数,硬件的问题并不神秘。下面就让我们一起看看在C++ Build er中是如何检测硬件的。

  1. 检测CPU的型号

  先让我们从最简单的做起,看一看自己的CPU型号。首先,在C++ Builder中画 出图1所示的窗体,在下面的几个例子中我们将一直使用这个窗体作示范,它包括一个用 来激活测试的Button和一个用来显示结果的Memo。我们可以用GetSystemInfo这个API获 得CPU的型号。将下列代码添加到Button的Click事件里就可以了:

  void __fastcall TForm1::Button1Click(TObject *Sender)
   {
   //获得CPU型号
   SYSTEM_INFO systeminfo;
   GetSystemInfo (&systeminfo);
   Memo1->Lines->Add("您的CPU类型是:"+String( systeminfo.dwProcessorTy pe ));
   }

  运行它,点击Test试试,CPU型号出来了吧!

  2.检测内存状态

  获得内存状态的方法和CPU型号差不多,只是他用到的是另外一个API:GlobalMe moryStatus。其中,成员dwTotalPhys用来获得物理内存总量,而dwAvailPhys顾名思义 是有效物理内存的意思。我们只要把下面几行代码加到上面程序的后面就可以了(不用重做,下同):

  //获得内存状态

  MEMORYSTATUS memory;

  memory.dwLength =sizeof(memory); //初始化

  memory.dwLength =sizeof(memory); //初始化

  GlobalMemoryStatus(&memory);

  Memo1->Lines->Add("您的物理内存是(Mb):"+String(int(memory.dwTotalPh ys /1024/1024)));

  Memo1->Lines->Add("其中可用内存是(Kb):"+String(int( memory. /1024)) );

  怎么样,看出点门道了么?两段程序的格式几乎一模一样,其实,GetSystemInf o和GlobalMemoryStatus还可以获得许多其他有关CPU和内存的信息,就按照上面的格式 去套就行了,更详细的资料可以去看C++ Builder4的Help。

  3. 检测可用硬盘空间

  好了,经过前面两个简单问题的热身,我们来处理一个稍微复杂的问题:我们知 道安装程序大都有一个检测硬盘空间的过程,那么这是怎么实现的呢?他用到的是 API函 数GetDiskFreeSpace,这个函数输入一个参数:目标盘的路径;返回四个参数,依次是 每簇的扇区数、每扇区的字节数、空闲的簇数、总簇数。假如我们需要检测C盘的总容量 和可用容量,那么可以把以下代码加到上面的程序中:

查看更多与如何在C++Builder中检测硬件相关内容

[ ] [返回上一页] [打 印] [收 藏]
上一篇文章:
下一篇文章:
      C++语言的VxD与外界通信的所有接口       如何读写硬件端口
∷相关文章评论∷   (评论内容只代表网友观点,与本站立场无关!) [发表评论]
 
 
 
 
晋ICP备05008232   维护网络安全、传播安全技术才是我们的目标! 
 
关于本站 - 网站帮助 - - 下载声明 - 友情连接 -网站地图