I have been using registry entries when I create trial versions. I limit the trial version to number of times it can be exectuted before expiring. For example, I set up an entry in local machine under software (my program), create a key, call it what ever you like, (you may be able to trick people who check for the key by naming it somthing that they would not think of checking such as: background, or font size.) If you make a 15 execution trial version set the value to 15. When you start the program use the onload to read the value of the key. Display a message such as you have 15 trys to use this evaluation, after displaying change the registry key to reflect the use of 15 - 1
Then you set the onload to determine if the key = 0 then display the message box that the evaluation has expired and end the program
You could easily set this as a date registry key. Plus you could also encrypt the info that is displayed in the registry keys.
Thats the way I would do it anyway...