1: use hardware id
2: dont use hdd id it can be faked
3ut text file in website.com/text.txt with serial and ip what ever u can do
4:inet to that server if connection is successfull then check the textfile to se if that ip ,hardware id match and serial etc.
5: if inet gets blocked dont allow programme to run
6:do no make msgbox to show customers messages your programme can be cracked!!! , msgbox is a big no if u selling your software.

try and make multimul authentication trick if 1 fails do more checks if all fails disallow

if u want to update the programme just fine the exe name and delete it and put new exe in folder