Having had quite a few grumbles from users in the early days about only being able to run our software on one PC, I ended up giving everyone 2 activations. The issue now (and perhaps not a big one) is that I know that quite a few users are gaming this and sharing licenses - either within a company or with a friend. I even get support requests where they state this quite clearly, and think this is what the 2 activation limit means (our EULA actually states quite clearly that this is not the case).
So my question is: is there a better way to handle letting users use my product on more than one PC? A common use case is that users (quite legitimately) like to use this software on a home PC and a laptop. What I would really like would be some way of tying the license to a user, rather than a machine (e.g. a Windows login?). Failing that, perhaps some super-simple way to deactivate/grab the activation? E.g. the user could fire up on his laptop and the activation would automatically switch to there, and be removed from the other PC, and then seamlessly go back when he returns to the office. My application would need to check periodically that this has happened, I guess. Any ideas out there? Perhaps it is something that could already be done within the current framework. Or perhaps it's not that big of a deal, and I'd actually lose more sales by not offering 2 activations that I would gain by clamping down? I don't know, but I do know that it niggles me.