Results 1 to 4 of 4

Thread: trial version software

  1. #1
    akshayshelke is offline VB.NET Forum Newbie
    .NET Framework
    .NET 2.0
    Join Date
    Nov 2010
    Posts
    1
    Reputation
    0

    trial version software

    i am working on a demo version software which should work for 30 days...if i use system date then it can be easily fooled.is there any way using which i can create fool proof demo version.
    i can not use web service.because user may not have internet...


    Thanks in advance...

  2. #2
    jmcilhinney's Avatar
    jmcilhinney is offline VB.NET Forum Moderator
    .NET Framework
    .NET 4.0
    Join Date
    Aug 2004
    Location
    Sydney, Australia
    Posts
    13,778
    Reputation
    1703
    You have no choice but to use the system date. What you need to do is record the system date the last time the user used the app and, if the current date is before that, you know that they have tampered with the system and you can void the trial. You must store that date in a location that is not easy to find or read.

    No system is uncrackable, but that's as good as you can do.

  3. #3
    Ehsanit is offline VB.NET Forum Enthusiast
    .NET Framework
    .NET 4.0
    Join Date
    Feb 2011
    Posts
    80
    Reputation
    101
    Thinking of the trials for commercial software out there, there are other ways of limiting trial versions. For example some regularly put prompts up when you run the program, that won't close for 5 seconds or so. Others turning off some critical feature, of which the best example is probably file recovery software that tells you what files it can recover but won't actually recover them until it's bought.
    In some cases a 30 day trial isn't ideal because the person only actually wants the software for a one-time purpose, and will uninstall it forever within 30 days.

    The proposal of recording and hiding a time stamp of when the program was last used is a good one, and most people won't think to start fiddling the clock at all until they've gone past the time limit and are blocked out. The one other thing that might make sense to me would be having your program check the time against an external time server, though I don't know how feasible that is. Just thinking out loud as it were, but some of it might be helpful.

  4. #4
    JohnH's Avatar
    JohnH is offline VB.NET Forum Moderator
    .NET Framework
    .NET 4.5
    Join Date
    Dec 2005
    Location
    Norway
    Posts
    15,080
    Reputation
    2802
    You must store that date in a location that is not easy to find or read.
    It doesn't have to be hidden at all, you could include a tamper check, for example store an additional hash of its string representation or the like - some basic algorithm that is not that easy to figure out.

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •