At the risk of sounding paranoid, or like someone who actually writes
software for a living, what about online registration and then supplying
the user with a version of the application that is coded to his
username.
You could give away the shareware version for free with the annoying
reminder built in, then have the user register on your website for the
release version. You would build him a custom version of the program on
the fly with his registration code built in, and download this to him -
or ship it on disk in the case of phone or paper registration.
The custom version would not run on any Palm OS device with a different
username. The user could delete and install the application all he
wants. If he gave or sold the software to someone else, they would have
to register it with you. If he changed his name, he would have to
register again with you for an updated version - for free this time of
course, and would have to agree to destroy all prior copies.
How would you keep him from changing his name a dozen times and giving
the software to other people? You wouldn't directly. You could certainly
track the number of times someone claimed to change their name or
sell/give your software to some else, but they can steal it if they want to.
How would you prevent a hacker from figuring out your scheme and
publishing a crack? You probably can't. Some people will spend amazing
amounts of time and energy to steal software.
You could create a database on the Palm OS device that has a different
creator code than your application, but it will not be deleted when your
application is deleted. This would allow deletes and restores, but would
leave junk behind. This is annoying as well, and probably not recommended.
If you do nothing except trust that valuable software will cause people
to pay for it, you will probably do OK. There do seem to be quite a few
people out there who think that stealing software is OK - especially if
they only use it "once in a while." You won't change their minds. You
may alienate some buyers with a rigid registration program, but I've
never been offended by a software company that required me to register
before I used their software.
-Tim
--
Tim Hewitt
Principal Software Engineer
Fairchild Semiconductor