如何通过LABVIEW获取硬盘ID.doc

如何通过LABVIEW获取硬盘ID.doc

ID:53709247

大小:119.60 KB

页数:4页

时间:2020-04-06

上传者:简单2019
如何通过LABVIEW获取硬盘ID.doc_第1页
如何通过LABVIEW获取硬盘ID.doc_第2页
如何通过LABVIEW获取硬盘ID.doc_第3页
如何通过LABVIEW获取硬盘ID.doc_第4页
资源描述:

《如何通过LABVIEW获取硬盘ID.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

通过LabVIEW获取硬盘序列号      网上这类的帖子很多,不过差不多都是通过调用动态链接库实现的。准确的说实现获取硬盘序列号的工作是由其他语言编写的DLL来实现的。今天我的这例子不用调用动态链接库,直接由LabVIEW来获取硬盘的序列号。     这种方式在一个论坛上看见过,本想参考参考,不过楼主把VI加密了,索性自己做一个和大家分享,讨论讨论。     本程序读取的是硬盘的物理序列号,不同于DLL调用的方法,本方法获取的是硬盘唯一真正物理ID(是固化在硬盘BISO里的SN不是分区的SN),不会出现重复,也不可能被修改(或者说难度很大,而且还有危险,网上看到过说一个叫PC-3000的可以修改,没有尝试过,有哪位胆大拿自己硬盘试验一下,把结果共享一下吧)。可用在软件加密中。1、原理      大家知道,硬盘相对于CPU来说属于外部设备,而CPU访问外部设备其实就是对外部IO的端口操作,这是硬盘的底层操作,对硬盘的任何操作都可以的,这样只要我们搞清楚如何通过IO指令对硬盘操作和硬盘物理序列号存放的寄存器就可以轻松读取我们所要的硬盘物理序列号了。下面是从网络上搜集的一些资料。硬盘读写端口的具体含义对硬盘进行操作的常用端口是1f0h~1f7h号端口,各端口含义如下:端口号读还是写具体含义1F0H读/写用来传送读/写的数据(其内容是正在传输的一个字节的数据)1F1H读用来读取错误码1F2H读/写用来放入要读写的扇区数量1F3H读/写用来放入要读写的扇区号码1F4H读/写用来存放读写柱面的低8位字节1F5H读/写用来存放读写柱面的高2位字节(其高6位恒为0)1F6H读/写用来存放要读/写的磁盘号及磁头号第7位恒为1第6位恒为0第5位恒为1第4位为0代表第一块硬盘、为1代表第二块硬盘第3~0位用来存放要读/写的磁头号1f7H读用来存放读操作后的状态第7位控制器忙碌第6位磁盘驱动器准备好了第5位写入错误第4位搜索完成第3位为1时扇区缓冲区没有准备好第2位是否正确读取磁盘数据第1位磁盘每转一周将此位设为1,第0位之前的命令因发生错误而结束写该位端口为命令端口,用来发出指定命令为50h格式化磁道 为20h尝试读取扇区为21h无须验证扇区是否准备好而直接读扇区为22h尝试读取长扇区(用于早期的硬盘,每扇可能不是512字节,而是128字节到1024之间的值)为23h无须验证扇区是否准备好而直接读长扇区为30h尝试写扇区为31h无须验证扇区是否准备好而直接写扇区为32h尝试写长扇区为33h无须验证扇区是否准备好而直接写长扇区上面是磁盘0的指令,下面是磁盘1的171H1号硬盘错误寄存器172H1号硬盘数据扇区计数173H1号硬盘扇区数174H1号硬盘柱面(低字节)175H1号硬盘柱面(高字节)176H1号硬盘驱动器/磁头寄存器177H1号硬盘状态寄存器2、操作      知道硬盘的IO操作指令了,下面就是如何在LabVIEW里去实现这些指令了。这方面LabVIEW提供了现成的操作指令。他们就是读端口和写端口。点击开看大图接下来的工作就很简单了。大致流程就是下面这样了:2.1 等待硬盘就绪2.2 发送命令      ;如果向主控制发送命令,则端口为1f0h-1f7h      ;如果向副控制发送命令,则端口为170h-177h      ;1f6h   如果要检测的设备为该IDE接口的主(MASTER)设备,那么发送a0,如果为从那么发送b0       ;1f7h   如果要检测的设备为ATA设备那么发送ec       如果为ATAPI设备那么发送a12.3 等待硬盘就绪2.4 将返回信息读回        ;注意一定要读满100h个字长。也就是寄存器中的所有信息2.5 返回的信息中,型号、序列号、版本号为字形式       ;需要整理到字符串的形式3、代码及前面板点击开看大图注意:此程序只在XP下对并口硬盘做了测试。对串口(SATA)硬盘的测试失败。VISTA下由于安全原因可能会被禁止,请将程序保护的选项去除。这个没有详细测试,希望安装了VISTA系统的朋友测试一下,把结果共享出来。 上面图即为程序的全部代码。凡是索要源代码的留言和邮件疑虑不予回复。敬请谅解。关键词:LabVIEW端口操作硬盘序列号硬盘ID硬盘SN

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
关闭