die einfachste Lösung wäre die Verwendung von NTFS und das ausführen/lesen der Exe nur einem bestimmten Nutzer zu gestatten. Dein Programm macht dann nichts anderes als das Programm unter diesem bestimmten Nutzer auszuführen.
Die kompliziertere Lösung wäre wohl ein
Api-Hook in dem die Funktionen zum ausführen von Programmen gesperrt werden.
Mir bleibt nur der Sinn des ganzen verborgen. Möchte ein Nutzer das ein bestimmtes Programm nicht gestartet wird so startet er es eben einfach nicht bzw. setzt im Windows die Rechte entsprechend.
Was hast du also vor?