Şöyle de deneyebilirsiniz;
Veritabanınızda lisans tablonuza iki sütun daha ekler ve license_type, statu adını verirsiniz. Değer olarak hourly almış bir lisans ile programınızı açan kullanıcının lisans kodunun statu değeri firsttime ise 1 saatlik bir timer (system timer olmalı) başlatırsınız. Programın close olayında timerın (elapsed time on a timer olarak arayabilirsiniz) geçen süresini veritabanınızdaki statu sütununa güncellersiniz.
Program her açıldığında bu statu sütununu kontrol edip kullanılmış süresi 1 saatten küçük ise 1 saatten çıkarıp programı açar, 1 saat veya üzeri ise lisans süresinin dolduğu mesajını basarsınız. 1 saatini doldurmuş her lisansınızın statu durumunu used olarak güncellerseniz programın açılışında süreyi kontrol etmeden önce bu durumu kontrol ederekte lisans süresinin dolduğu bilgisini iletebilirsiniz.
Eğer yanlış anlamadıysam hiç programdan çıkmazsa bu sefer demo bitmeyecek yeniden başlatana kadar. Sanki bir crontab yazılması gerekiyor. Yada web uygulaması ise websocket kullanılabilir.