Здравствуйте, это скорей всего это можно реализовать через API, но далеко не у всех есть возможность его использовать в защищаем приложении по разным причинам.
Поэтому в перспективе предлагаю добавить и такой вариант лицензирования:
Выбор количества открытых копий при которых приложение будет работать как обычно, без запросов ключей и тд, например 1 копия. При запуске второй и далее копии будет показываться опциональный диалог с предупреждением и диалог с вводом ключа.
В keygen добавить новый properties: count of executed copies. Соответственно это количество будет отвечать за то, сколько копий приложения сможет запустить клиент, например 3. Четвертую копию приложение уже не даст запустить, будет показан опциональный диалог с предупреждением и диалог с вводом ключа.
Здравствуйте, на самом деле данный функционал можно организовать с помощью системы плагинов.
Делаем плагин, в функции Enigma_Plugin_OnInit вызываем Enigma API - EP_CheckupCopiesCurrent проверяем сколько копий уже запущено.
Если больше чем надо, вызываем EP_RegShowDialog чтобы показать регистрационный диалог и проверяем если зарегистрировано ли функцией EP_RegLoadAndCheckKey.
Интересная идея, не требующая внесения изменение в лицензирование и тд, может и подойдет для меня конкретно.
Но у нее есть и отрицательные стороны:
Можно будет сделать только, например: разрешена одна копия, лицензия вызывается на 1+N. А ограничить на N копии для одного и того же приложения нельзя будет разными ключами лицензий.
Почему, тоже можно. Количество версий можно закодировать в crypted sections ключа.
Представляем, что секции это битовые константы находящиеся в ключе. Таким образом, ими можно закодировать 16 бит информации, т.е. максимальное число 65535.
Извлекать информацию о ключе можно функцией EP_RegKeyInformation.
Тогда такое решение подойдет.
Перенесете тогда эту тему в соответствующий раздел по плагинам? В планах у вас будет возможность реализовать этот плагин?