My VB.NET program is being distributed to some beta testers. They have been given a beta testing “key” code to activate the program in their PC.
I have an online MySQL database. It contains a list of keys. When someone activates his/her key, my program checks against the database, and if the key has never been used before, the program is activated (and they key in the database becomes “used”).
This, works for me. But, is there a better way? A more standard, easy way?
For a beta, I’d just hard code an expiration date and forgo any sort of “licensing” on it. Betas are meant to allow specific customers to exercise your product before it’s ready for sale. Let them install it as much as they want and on as many machines as they can. That will improve your likelihood of catching errors during the process. For security you might confirm the end date with a public time server.
Once you are ready for sale, use a commercial copy protection tool from a known vendor. We sell DeployLX Licensing which makes it really easy to generate serial numbers and activation codes.
If you try and do it yourself you’ll