Jetzt nur mal interessehalber - mit Compiler-Direktiven geht das nicht weil... ?
Ich hatte mal ein Programm für jemanden erstellt, der das als Demo und als Vollprogramm haben wollte. Damit jetzt keiner die Demo hackt, sollte die Demo wirklich eingeschränkt sein. Da ich aber keine zwei Programme schreiben wollte, machte ich das über Compiler-Direktiven. Ich hatte etliche Prozeduren in zwei Varianten, auch eine
Unit in zwei Versionen, sogar das Optionsfenster in zwei Versionen.
Irgendwo hatte ich dann eine globale Konstante, und wenn der Konstante "DEMO" zugewiesen war, wurde so kompiliert, sonst anders.