There a lots of ways you can do this. In pseudo-code it looks something like this:
// activateTurboActivate.Activate()
// just activated, we can check 90 days from nowSaveCurrentDate()
Then, when you app starts up:
DateTime lastCheckDate = LoadLastCheckedDate()
if ((DateTime.Now - lastCheckDate).TotalDays > 90){ // note, this will throw an exception on certain errors (e.g. Internet failure, etc.) // You should handle these errors in a logical way (don't just eat them) bool genuine = TurboActivate.IsGenuine() SaveCurrentDate()}
As far as where to save the DateTime, it's up to you. You can save it to a registry value, a file, you can encrypt it, you can do anything you want with it. To get a DateTime object into "saveable" form then use DateTime.ToBinary().
Tell me if this helps.