Это невозможно, конечно. Независимо от того, какие хлебные крошки вы оставите, чтобы записать, что программа была запущена, ее нужно оставить на той же машине. Оставить любого пользователя с достаточными навыками или достаточно хорошими инструментами (например, ProcMon от SysInternals), чтобы узнать, куда вы его бросили, и снова удалить. Предполагая, что они достаточно заботятся о том, чтобы приложить усилия.
Простое решение состоит в том, чтобы преднамеренно нанести вред вашей демонстрации, чтобы отсутствовала важная функция, которая сделала бы ее полезной. Нравится Файл + Сохранить. Не только отключен, но и полностью отсутствует в коде, поэтому взлом демо-программы тоже не работает. Это легко сделать с помощью директивы #if в вашем исходном коде.