On Tue, 3 Jan 2006, Ron Speerstra wrote: > my question: howtoo read the HD/CD/DVD serial-numbers with Python.
I can take you part-way there, at least under Windows. Hopefully someone can finish the job. I'm assuming you want the same serial # that shows up when you do a DIR on the CD, e.g.: >dir d: Volume in drive D is 050512_1752 Volume Serial Number is 8A73-780D Here's some code: >>> import win32api >>> CD_Info = win32api.GetVolumeInformation("D:/") >>> serno = CD_Info[1] >>> serno -1972144115 >>> "%X" % serno '-758C87F3' >>> "%X" % -serno '758C87F3' This is as far as I can get. the hex string, in this case 758C87F3 is the two's complement of the serial number that shows up when I do a "dir d:": >dir d: Volume in drive D is 050512_1752 Volume Serial Number is 8A73-780D Note that: 758C 87F3 + 8A73 780D ========= 1 0000 0000 Put another way, if you flip every bit in the 758C87F3 string and add one, you'll get the 8A73780D serial no. I hope someone more artful than I can show a quick and easy way to convert either '758C87F3' or -1972144115 to the '8A73780D' that is your goal. I'm betting there's something simple I'm missing. (By the way, it occurs to me; I guess you could just do the "dir" and capture the serial number in the output; but that's inelegant and wasteful.) _______________________________________________ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor