오세현 (프레이) Ответов: 1

В C#, как о программа контроля времени или системного времени использования.


Не говорите по-английски хорошо. Я стараюсь писать как можно больше.

Я прошу способ управления системным временем или программным временем с уверенностью.

Я создаю специальную ознакомительную версию программы.

Я создал библиотеку классов, чтобы сгенерировать файл лицензии и проверить время истечения срока действия лицензии. И я сравниваю текущее время со временем истечения срока действия лицензии в конкретном модуле через библиотеку классов.


Проверкой лицензии можно управлять с помощью текущего времени и времени лицензии с помощью Datetime.Сравнивать. Однако, если произвольный пользователь намеренно настраивает системное время, программа может использоваться неограниченно долго. Это происходит потому, что если вы сохраняете только среднее время (?) между временем истечения срока действия лицензии и текущим временем, вы можете продолжать использовать его.

Что я уже пробовал:

Именно эту идею я и пытался воплотить в жизнь.

1. я не могу сравнивать время с time.windows.com потому что это не сетевая среда.

2. Среды.Тиккоунт имеет ограничение по времени в 24,9 дня.

3. Microsoft.Win32.SystemEvents.TimeChanged предполагая, что вы используете его, вы не знаете, изменилось ли время заранее, прежде чем запустить программу.

4. я рассмотрел, как использовать Microsoft.Win32.SystemEvents.TimeChanged вместе со временем доступа к файлу лицензии. Однако возможно неограниченное использование. Потому что вы можете установить его на среднее время.

5. я также рассмотрел подсчет реестра.
Недостатком является то, что если вы продолжаете работать произвольно, вы не сможете запустить его когда-нибудь.

1 Ответов

Рейтинг:
1

OriginalGriff

Если у вас нет доступа к внешним источникам времени, то вы не можете ограничиться датой, поскольку вы полностью зависите от системных часов, которые пользователь может изменять по своему желанию.

Это невозможно обойти.

Вы можете сказать "эта дата или N часов использования" и вести учет того, сколько они использовали до сих пор. Но... это также можно обойти, особенно если они запускают ваше приложение в виртуальной машине и каждый раз сбрасывают виртуальную машину.

В принципе, ограничение приложения "пробной версией" без доступа в интернет никогда не будет безошибочным, и есть очень хороший шанс, что вы приложите больше усилий, чем сэкономите в потерянных продажах, если будете работать над ним слишком усердно ...