User licenses and product keys for custom Access app

M

Macsmasher

Hi all,

Running Access07.

I have an application I'm going to market and need to copy protect it. I'm
curious what others have done in this regard. How do you generate and
distribute a product key? If you sell a 5 seat license for example, how do
you track and enforce that? Do you require that they call you for a product
key? If so, how do you generate the key? Do you reference the workstation's
MAC address for example to ensure they don't install that key on another
workstation?

FYI, this is what I did some years ago for an application that required an
annual lease...

Primary Files were:
front-end (with tbl links to the back-end and license files)
back-end (typ)
License file (an Access file with custom file extension consisting of a
single table to store lease expiration, product key, name of client company,
etc. File was locked down with Access group level security and user couldn't
edit or view the data.)

I used the creation date of the desktop.ini file for the unique id for a
workstation. That numeric date value was used with other constants to
generate a numeric value that the user would give me over the phone. Using
another Access application on my end, I would enter that number on a form I
created, which would then generate the product key (on the client's computer,
that key was already programmatically created using the same algorithm I use,
but in a hidden unbound txt box on their product key entry form.) I would
give that key to the user over the phone, and provided that value they
entered matched the hidden unbound txt box value, they were good for 365 days.

In the app, I had code in my first form to launch (checks tbl links, sets
icon, etc.), I had additional code to check for a product key. If no key,
app would launch in 30 day demo mode. (Demo mode could only be run once. A
chkBox stored in back-end would be checked, so even if they installed the app
on another workstation on the network, demo mode could not be used again
unless they deleted their back-end.) This first form would also check for
number of days left on the lease. If less than 60 days remained on an
existing lease, a popup form would begin reminding the user that they had xx
days left and please renew.

So...that's how I did it. I know there must be a better unique workstation
id than using the creation date of the desktop.ini file, but I'm not sure how
to pull that. Maybe an API call for motherboard serial number?

How did you do it? This should be an interesting thread.

Thanks in advance,
Larry
Maximize Software, Inc.
 
J

Jack Leach

SafeNet has some very effective hardware keys as well. Maybe not the most
user friendly, and I have no idea about cost, but I've never seen a cracked
code for this before (I have ...heard of... at least 4 or 5 different
programs with cracked alladin keys).

Of course, if its not some giant top dollar specialized application that
everybody and their brothers know about, chances are slim that someone would
take the time to work around the key.

http://www.safenet-inc.com/support/tech/sentinel.asp


I think Tony T. would reasonably argue against any such methods, as there is
always a way around, if someone wants to work hard enough to find it.

http://www.granite.ab.ca/access/demo.htm

--
Jack Leach
www.tristatemachine.com

"I haven't failed, I've found ten thousand ways that don't work."
-Thomas Edison (1847-1931)
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top