Hola.
Tenes varias formas. Si lo que estas pensando es en desarrollar una aplicación windows podes usar el registro de windows para guardar claves y que tu sistema consulte el valor de la misma que fecha tiene que estado etc.
Otra cosa es que puedas también asegurte que tu aplicación no sea instalada en varias computadoras generando una clave de registro en base al número del disco duro de la PC.
Hay muchas formas, pero podrías empezar con estas que te digo. Hace un tiempo preguntaron algo similar y si queres ver como haces con .net para hacer esto del registro y código del disco duro puedes mirar este post en el que consultan algo similar de lo que buscas:
http://www.forosdelweb.com/f79/softw...cencia-656022/