An important fact to remember is your software will be pirated. This is a fact. If your software isn't pirated that is a problem because it means people aren't even interested in using your software for free. This line might be hard to accept at face value, now take a step and breathe.
Once you've accepted my first point, the most important thing you have is your customer's confidence, read this horror story of dealing with Xheo: Open letter to XHEO: That is not a good way to do business.
No matter what you choose to do to handle registration/activation make sure it doesn't hurt your customers that actually paid for the software because the people that are intent on using it for free, will be using it for free. Even the most advanced (and system pervasive) copy protection schemes like Securom and Starforce that are basically viruses are all extracted out of programs by the "hackers". Don't treat your customers like thieves. All you want to stop is a person that buys your software from installing it all over their network for free. Or one user downloading your software and being able to zip up the installation directory and put it in a torrent.
Your copy protection scheme can easily break your business if it makes it harder for your customers to legitimately use your software. So tread carefully and go for the simplest and most cost effective strategy because all the money you invest in copy protection is basically thrown down the toilet.