The simple way I use is to have an encrypted configuration file (a .xml file from Xmlize coded with AESStream) with install date/time and last use date/time.
If the program is opened after passing license date or before last use date ( ), it will ask for a new license.