This is a demo of a small program I wrote called DFVERIFY,
it is written in Foxpro but generalizable to clipper if you modify the 
WINDOW atribute attached to the WAITs.  The main menu is from a project
I have been working on but most of that code is not included.

The Idea is to protect your program by shaming the pirate since the real
licensee's company name is on the screen (and should be on every screen and 
Report).  They think they've got you beat when they change the XX_VARS file,
but the VERIFY routine compares the Company name saved in the XX_vars file
and compares it to the literal string embedded in the DFVERIFY routine, which
should be the same as the one saved in XX_vars as shown on PAGE 2 of my
SUBMAN.sw table.   If the real Company isn't found, the XX_vars file is 
DELETED (and therefore rebuilt when it next runs) and messages are displayed.

When you look at the code, you'll see that uncommenting a couple lines 
will Force the pirate to reboot or live with that annoying siren.

Look at it, you can figure it out.
Let me know what you think.
