Короче говоря, вы не можете ничего от пользователя скрывать (при условии, что они являются администратором), но вы можете сделать это сложнее.
Вы можете «скрыть» ключи реестра с помощью собственного API для доступа к реестру по сравнению с Win32 API. Это фактически означает, что пользователь не сможет удалять или воссоздавать ключи реестра с помощью RegEdit. Им также придется прибегать к использованию родного API.
This article описывает родной API, а также скрытые ключи реестра (в которых используются встроенные нули в именах ключей). Инструмент RegHide от Sysinternals позволяет скрыть ключи реестра, и инструмент RegDelNull позволяет удалить их.
Но снова находчивый человек все еще может обойти это. Единственный способ убедиться, что он по-прежнему действителен, заключается в том, что сторонняя организация (например, веб-служба, которой вы управляете) проверяете, что лицензия по-прежнему является хорошей.
Этот вопрос относится к серверу или, возможно, суперпользователю. –
Разве он не может просто переустановить? –
Нет. Помните, я подробно не описал схему лицензирования, это еще одна тема! Я просто хотел бы скрыть ключи в реестре, чтобы их нельзя было легко восстановить, если мое программное обеспечение решит их удалить. –