IOCTL_IDE_PASS_THROUGH = $0004D028 und dort gibt es PassThrough.IDSector.SerialNumber
DFP_RECEIVE_DRIVE_DATA = $0007C088 in SendCmdOutParams.IDSector.SerialNumber
IOCTL_STORAGE_GET_MEDIA_SERIAL_NUMBER = $002D0C10
und über
GetVolumeInformation kommt man an die Seriennummer einer Partition.
Das $0007C088, in Hators Code wäre also ein DFP_RECEIVE_DRIVE_DATA.
(mit 'ner Konstante läßt sich so Einiges manchmal einfacher lesen)
PS: Ich selber versuche zuerst IOCTL_IDE_PASS_THROUGH und wenn das nicht geht, weiche ich in meinem Programm auf DFP_RECEIVE_DRIVE_DATA aus, aber ich glaub das hab ich damals nur so gemacht, da mir IOCTL_IDE_PASS_THROUGH mehr Infos liefert.