1

Possible Duplicate:
how can i make my product as a trial version for 30 days?

I want to create a 30 day trial version of my software, I can record the installation date and compare it with the sysdate of the machine. The problem is how to validate that the user changed the sysdate and how much time I have to adjust in my trial period.

One option is to consume a web service, but the problem are the offline customers.

This is stand alone windows application.

Is there any method I can use to count XX days since the installation?

Community
  • 1
  • 1
Jonathan
  • 13
  • 4
  • 1
    also: http://stackoverflow.com/questions/1525378/how-can-i-make-my-product-as-a-trial-version-for-30-days?rq=1 – sloth Oct 09 '12 at 21:30
  • 1
    also: http://stackoverflow.com/questions/412833/c-sharp-how-can-i-create-a-simple-time-based-trial-version-of-my-software?rq=1 and ca. 1000 others – sloth Oct 09 '12 at 21:31
  • What happens if the system date on the machine is reverted back to 1 year ago or 10 years ago? – t0mm13b Oct 09 '12 at 21:32
  • Why roll your own, there are fairly inexpensive solutions out there. I used http://soraco.co/QuickLicenseManager.aspx and works good. – Luke Hutton Oct 09 '12 at 21:42

1 Answers1

1

There is no way, which is one hundred percent reliable. You can query online website for current date, and users will reverse the requests with network sniffer and spoof the server. You can compare most recent temporary file date to detect clock rewinding, but it might cause other issues. You can do something else, and users will patch your code to remove the protection.

Do it the way that makes sense to you, still without having an obsession around it. Your code will stay hackable anyway. You will be better of reasonably pricing it so that hacking makes no sense.

Roman R.
  • 68,205
  • 6
  • 94
  • 158
  • Thanks, I not that worried about someone hacking the validation, I am just happy with validating the 30 days but I guess it is a lost battle :p – Jonathan Oct 09 '12 at 21:48