介绍:
有很多时候我需要知道机器的一些物理信息(比如激活技术),所以我就利用放高考假的时间,封装了一个可以获得硬盘的物理信息的类,方便大家。此类在我的机器上测试效果如下:

CGetMachineInfo类简介:
| 类名: | CGetMachineInfo |
| 类中的一些要说明的函数: | 功能 |
| int ReadPhysicalDriveInNT (void) | 在NT内核系统下读取硬盘的物理信息 |
| int ReadDrivePortsInWin9X (void) | 在9X内核系统下读取硬盘的物理信息 |
| int ReadIdeDriveAsScsiDriveInNT (void) | 读入NT系统下的SCSI硬盘的物理信息 |
| BOOL ReturnInfo(int drive, DWORD diskdata [256]) | 收集磁盘物理信息主函数 |
| char *ConvertToString (DWORD, int , int )
| 把整型变量转换为字符串 |
| CGetMachineInfo(void); | 类的构造函数,用于区分系统内核然后自动开始收集信息 |
| 类中的一些要说明的变量: | 变量说明 |
| CString str_DN_Modol | 硬盘的出厂序号 |
| CString str_DN_Serial | 驱动器的连续序号 |
| CString str_DN_ControllerRevision | 硬盘驱动版本 |
| CString str_HardDeskSize | 硬盘的大小(bytes) |
| CString str_HardDeskBufferSize | 硬盘缓存大小(bytes) |
| CString str_HardDeskType | 硬盘类型 |
| CString str_Controller | 说明硬盘是主动盘还是辅动盘 |
| CString str_HardDesk_Form | 说明所取的信息来源于电脑上的第几个硬盘 |
使用CGetMachineInfo库:
我使用了一个基于对话框的程序测试了这个类,我在对话框的初始化函数里构造了这个对象,因为类的构造函数会自动收集信息的所以构造了一个类变量后我们就可以直接的访问它所取得的信息就可以了。代码如下:
BOOL CHardDeskInfoDlg::OnInitDialog()
{
CDialog::OnInitDialog(); CGetMachineInfo m_Info; //构造这个类的变量
SetDlgItmText(IDC_HARDDESK_ID,m_Info.str_DN_Modol);//直接访问它收集到的信息
SetDlgItemText(IDC_STATIC_SERIAL,m_Info.str_DN_Serial);
SetDlgItemText(IDC_STATIC_CR,m_Info.str_DN_ControllerRevision);
SetDlgItemText(IDC_HARDDESK_SIZE,m_Info.str_HardDeskSize+" bytes");
SetDlgItemText(IDC_BUFFER_SIZE,m_Info.str_HardDeskBufferSize+" bytes");
SetDlgItemText(IDC_HARDDESK_TYPE,m_Info.str_HardDeskType);
SetDlgItemText(IDC_STATIC_Controller,m_Info.str_Controller);
......//
return TRUE; // 除非设置了控件的焦点,否则返回 TRUE
}结尾:
这个类是很容易使用的,详细的大家可以看源代码(匆促中也许会有错,请各位哥姐多包含)。
测试程序编译通过 VC++ 7.0,类可以用于...大概5.0以上所有的VC版本吧?
相关图文阅读
频道图文推荐
健 康 咨 询
时 尚 咨 询
相关专题
- 硬盘维护与数据恢复专区 (3794篇文章)
- 话说硬盘知识 (2967篇文章)
- 带你认识硬盘知识 (2967篇文章)
- 硬盘大全--测评、报价 (2967篇文章)
- 硬盘知识 (2967篇文章)
- 买它们就没错 学生专用250G硬盘导购 (88次浏览)
- 看高清玩游戏必备 六款大容量硬盘推荐 (74次浏览)
- 玩游戏下BT看电影 5款学生用超值硬盘推荐 (73次浏览)
- 比7200.11还强 32M缓存希捷250G简测 (39次浏览)
- 08年内存硬盘十大预测:新品加速普及 (30次浏览)
- 预备高清路线 新春高性价比硬盘导购 (21次浏览)
- 让你随心下载 5款主流大容量硬盘推荐 (18次浏览)
- 市场最低价 盒装日立160GB硬盘345元 (16次浏览)
- CeBIT:希捷宣布15000转硬盘本月上市 (13次浏览)
- 日立P7K500硬盘曝光 超低功耗为卖点 (11次浏览)



