硬盘唯一标识码_百度知道

c#里如何实现对pc硬盘的厂家唯一标识码进行获取……<br>是通过API来实现还是……期待高手出现<!--more-->

2013-08-29 15:15

网友采纳

热心网友

硬盘的序列号只能采用对硬盘控制器直接操作的方式进行读取,也就是说只能采用       <br>  CPU的I/O指令操作硬盘控制器,读取的方法如下面的C语言程序所示:           <br>  static     int     WaitIde()       <br>  {       <br>            int             al;       <br>            while     ((al=inp(0x1F7))     &gt;=0x80)     ;       <br>            return     al;       <br>  }       <br>  static     void     ReadIDE()       <br>  {       <br>            int             al;       <br>            int             i;       <br>            WORD         pw[256];       <br>            WaitIde();       <br>            outp(0x1F6,0xA0);       <br>            al     =     WaitIde();       <br>            if     ((al&amp;0x50)!=0x50)     return;       <br>            outp(0x1F6,0xA0);       <br>            outp(0x1F7,0xEC);       <br>            al     =     WaitIde();       <br>            if     ((al&amp;0x58)!=0x58)     return;       <br>            for     (i=0;i&lt;     256;i++)           <br>                        pw[i]     =     inpw(0x1F0);       <br>  }       <br><br>从别处找的,不知道是不是你要的,汗!!

来源URL:http://zhidao.baidu.com/link?url=nWZqLPgMs7An_CwY_FmUanoLGxy6L_MwFsiBz0PjPUsTMKGvYmlhnVmrIB-eh0VFCneVJnN9A9yc5ewYEBQE1_