| An alternative is definitely welcome here...!
Goodie! I look forward to benefitting from the fruits
of your research. :)
I wonder about the whole ID thing, though. Did you
ever establish a definitive criterion? The info. that
Jason was talking about can be had here:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\
That might be as specific as you get. Even Microsoft
has a hard time ID-ing a PC. They settle for the same
model of motherboard. There simply isn't any such thing
as a PC. It's a box with a dozen or so parts that companies
like Dell and HP have marketed as stand-alone appliances.
So Microsoft claims to license their software to a fiberglass
plate. (There's a dark, ironic humor there. The American
Supreme Court of the Plutocracy has ruled that corporations
are sentient beings with all the rights and none of the
responsibilities of human beings. Microsoft has designated
a plastic plate as a human being for the purposes of unilaterally
establishing a software contract. Now you have to pay
monopoly prices for a deal made between a concept and
a piece of plastic... But you're merely a human citizen. You
haven't got a legal leg to stand on. :)
As far as what WMI provides...
I don't know about USB IDs, but I don't find anything in
what WMI returns that is really definitive. I have a WMI
script I wrote some time back to get basic system information.
On my own PC, which I built myself, the BIOS serial number
returns "System Serial Number". The motherboard DeviceID
returns "motherboard". There is no serial number for disk drives.
Win32_ComputerSystemProduct Product UUID returns a
GUID, but I have to assume that's nonsense, since I'm
the manufacturer and I never gave the box an ID. Though
it's possible that WMI is generating this number and then
storing it. On the other hand, didn't someone suggest just
generating a GUID at install?