Trial period for app

  • Thread starter Thread starter Guest
  • Start date Start date
G

Guest

I am working on an application that will be sold to the general public as a
runtime. THe client wants people to be able to download the app and use on a
trial basis for a set period of time (say 5 days), after which they must buy
or the app locks them out. Any thoughts on the best way to do this? Would I
just tag/store the first time the app is opened and then calculate the time
difference? It needs to be something that they can't bypass.

Thanks a bunch
 
Hi Alex,
I'm interested in the same issue. Did you ever figure this out on your own?
How did you do it?
Karl
 
It is easy enough to save the date of first use either in the Registry
or in a field in a Table and compare it with Now() in startup code,
aborting with a nag message if it is later than 5 days after the date
of first use. What is more difficult is making this hard to bypass. My
suggestion would be that you convert the date/time of first use into a
text string and then encrypt it with two different keys. Save one
encrypted string in the Registry and the other in a Table field. On
subsequent startups, look for and (if found) decrypt the two strings
and compare them with each other and with the current date and time.
If the decrypted forms of the two retrieved values are different, or
if one is found but the other is missing, someone has probably tried
to tamper, and you can take appropriate action. If both are found and
decrypt identically, do the time check as before.

The only "easy" workaround for this sort of protection is deliberately
to set back the computer's clock, but that causes so many other
problems and complications, on a business system, at least, that you
don't need to worry about it much unless you are writing an
application that is only used very rarely - unusual for a database
app.

I am working on an application that will be sold to the general public as a
runtime. THe client wants people to be able to download the app and use on a
trial basis for a set period of time (say 5 days), after which they must buy
or the app locks them out. Any thoughts on the best way to do this? Would I
just tag/store the first time the app is opened and then calculate the time
difference? It needs to be something that they can't bypass.

Thanks a bunch

Please respond to the Newsgroup, so that others may benefit from the exchange.
Peter R. Fletcher
 
Hi Peter,
Do you have a URL reference that provides more detail for this programming?
Thank you for responding!
Karl
 
Thanks Peter, this application will be sold to the general public and
therefore I'm afraid it would not be a big deal to change the computer clock
so I was hoping for another workaround.

thanks
 
No - I was talking strategy, not tactics!

You can use fairly simple-minded encryption for this - write your own
routines using some combination of character position swaps and EXORs
with a key. The Microsoft Cryptographic API works very well but
requires that its DLL be installed on the target system, which no-one
is likely to want to do for a trial.

Most medium level Access Programming texts deal with writing to the
Registry - Litwin et al.'s excellent Access 200n Desktop Developer's
Handbook has a good section on this, with clear examples.

Hi Peter,
Do you have a URL reference that provides more detail for this programming?
Thank you for responding!
Karl

Please respond to the Newsgroup, so that others may benefit from the exchange.
Peter R. Fletcher
 
Unless you want your application to go out and look for a time server
on the internet, which is likely to make people's firewalls unhappy,
or plan to install a service that counts elapsed time independently of
the computer's clock and/or monitors manual time changes, you are
almost certainly going to have to assume that the system clock has not
been tampered with. Unless this is a very high value but infrequently
used application, people will not want the hassle of operating in a
"time warp" just to cheat you out of payment for it.

Thanks Peter, this application will be sold to the general public and
therefore I'm afraid it would not be a big deal to change the computer clock
so I was hoping for another workaround.

thanks

Please respond to the Newsgroup, so that others may benefit from the exchange.
Peter R. Fletcher
 
Back
Top