Nice idea but not quite feasible I think. Getting the information is easy with WMI and any programming language, but processing the results is quite another story. Most serial numbers use not only digits, but letters and punctuation as well. Apart from that, a lot of devices do not even return anything, leaving you with an empty value. On top of that you could never replace your defective CD Rom drive, memory module or any other hardware without having to modify your code and rebuild the application. The idea has been explored many times but I don’t think any commercial developer implemented it this way, mainly because good alternatives like a USB dongle are widely available.