首页  编辑  

检测光驱硬盘的序列

Tags: /超级猛料/Hardware.硬件相关/驱动器相关/   Date Created:

]、。·ˉˇ¨〃々—~‖…’”〕〉》」』〗】∶!"'),.:;?]` 能正常支持光驱(光盘)的检测。

注:如果返回值为'0000-0000',则未检测到。

function GetHDSerialNumber(Drv : String): String;

var

 VolumeSerialNumber : DWORD;

 MaximumComponentLength : DWORD;

 FileSystemFlags : DWORD;

begin

 if Drv[Length(Drv)] =':' then Drv := Drv + '\';

 GetVolumeInformation(pChar(Drv),

                      nil,

                      0,

                      @VolumeSerialNumber,

                      MaximumComponentLength,

                      FileSystemFlags,

                      nil,

                      0);

 Result := IntToHex(HiWord(VolumeSerialNumber), 4) +

           '-' +

           IntToHex(LoWord(VolumeSerialNumber), 4);

end;