У вас может быть другой ключ реестра, который вы увеличиваете после каждого дня использования. Таким образом, даже если они изменят дату компьютера, этот ключ будет указывать вашей программе, что она работает> 30 дней.
Кроме того, это значение может быть зашифровано, так что если пользователь попытается изменить его вручную, программа может отказать в запуске, поскольку не смогла расшифровать значение и получить из него действительное число.
Чтобы обойти переустановки, вы можете добавить некоторую информацию в любой файл, сохраненный вместе с пробной версией вашего приложения, который уникален для этой конкретной версии приложения (возможно, отметка времени с момента его установки). Когда пробная версия вашего приложения пытается открыть файл, он проверит эту подпись и убедится, что она была создана с тем же экземпляром, в противном случае откажется открывать файл. Это, по сути, лишает возможности просто переустанавливать приложение и продолжать его использовать.
В конце концов, однако, пользователь имеет полный контроль над своим компьютером и, вероятно, может найти способ обойти то, что вы хотите сделать (если не получить доступ к веб-службе, где эти данные хранятся, прежде чем позволить пользователю использовать приложение). Вы, вероятно, не должны тратить столько энергии, пытаясь остановить парней, которые хотят пройти через эту дополнительную проблему, а вместо этого тратить это дополнительное время / деньги / энергию на улучшение приложения для тех, кто готов платить.