function GetVolumeSeriealNumber(const Drive: TFileName): LongWord;
var
VolumeName, FilesystemName: Array[0..MAX_PATH -1] of char;
VolumeSerialNumber, MaxFilenameLength, FileSystemFlags: LongWord;
begin
GetVolumeInformation(PChar(IncludeTrailingBackslash(Drive)),
VolumeName, MAX_PATH, @VolumeSerialNumber, MaxFilenameLength,
FileSystemFlags, FilesystemName, MAX_PATH);
Result := VolumeSerialNumber;
end;