This is so messed up. So I get a call from my old boss about how he was installing a piece of software that requires the actual hard disk serial number.
To give a little background on this sort of thing…
Making sure your software is used by legal buyers is a concern for programmers around the world. My professor once said that we shouldn’t give 100% of our code to the users because there are people out there that are smart enough to decompile our programs and find the various verification algorithms used. He suggested that we give users 99% of our software, but keep the remaining 1% to ourselves. This 1% is the verification algorithm to confirm only valid users can use the program; this is commonly known as “activation.”
Activation is good, but it means our software users will need to have Internet access and that means small programmers like us have to set up a server that can validate users. Of course, only big companies with big clients can afford to do this. For the rest of us, we have to think of other ways.
One method programmers have used since the DOS era was to bind their software to the Hard Drive Volume Serial Number. This is not a good choice, as later we all find out that every time we format the same hard drive, a new Volume Serial Number is generated.
Background
A better solution is to get the Hard Drive Serial Number given by the Manufacturer. This value won’t change even if you format your Hard Drive. Of course, if people buy new hard drive, we have a problem. But at least we keep the regular hard-drive formatters happy!
So how do you get it off without opening the case?
You can use some VERY complex methods like this and this… Or you can use this simple executable
Download Here

Thanks to a contribution over at CodeProjects
