天天看点

如何得到唯一的硬盘序号

不正确的序列号

利用GetVolumelnformation获取的计算机硬盘卷序列号,不是正确的唯一序列号:

​<code>​01.​</code>​​<code>​void​</code>​​<code>​CWJGISApp::Register()​</code>​

​<code>​02.​</code>​​<code>​{​</code>​

​<code>​03.​</code>​​<code>​DWORD​</code>​​<code>​VolumeSerialNumber;​</code>​

​<code>​04.​</code>​​<code>​GetVolumeInformation(​</code>​​<code>​"c:\\"​</code>​​<code>​,NULL,NULL,&amp;VolumeSeriaINumber,NULL,NULL,NULL,NULL);​</code>​

​<code>​05.​</code>​​<code>​char​</code>​​<code>​charVolumeSerialNumber[l0];​</code>​

​<code>​06.​</code>​​<code>​itoa(VolumeSerlalNumber,charVoIumeSerialNumber,10);​</code>​

​<code>​07.​</code>​​<code>​CString strTemp;​</code>​

​<code>​08.​</code>​​<code>​strTemp.Format(​</code>​​<code>​"%s"​</code>​​<code>​,charVolumeSerialNumber);​</code>​

​<code>​09.​</code>​​<code>​}​</code>​

该函数获取的序列号在硬盘格式化后会发生变化。

正确获取硬盘的序列号

正确获取硬盘序列号代码如下: