Uwakpeter Ответов: 1

Добавить срок действия в приложение C# windows


Всем привет,

я пытаюсь заставить приложение Make истекать через несколько дней с помощью опции реестра, я успешно написал и прочитал из реестра, моя проблема заключается в проверке срока действия, из моего кода я предположил, что первый запуск пользователя - это 16.04.2017, я также предположил, что хочу, чтобы пользователь запускал приложение в течение одного дня, который должен истекать 17.04.2017, то есть если пользователь пытается запустить приложение после 17.04.2017, то часть if должна выполняться, но я не совсем понимаю это правильно, другая часть всегда выполняется, я буду признателен за лучший способ сделать это. Спасибо

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

<pre>regKey = Registry.CurrentUser.OpenSubKey("Systemfiles");//subkeyname
            if (regKey == null)
            {
                regKey = Registry.CurrentUser.CreateSubKey("Systemfiles");
                regKey.SetValue("tere", Encrypt("4/16/2017"));
            }
            else
            {
                regKey = Registry.CurrentUser.OpenSubKey("Systemfiles");//subkeyname
                string decryptDateValue = Decrypt(regKey.GetValue("tere").ToString());  //Keyname
                DateTime mainDate = Convert.ToDateTime(decryptDateValue);

                DateTime expiringDate = mainDate.AddDays(1);
                if (mainDate > expiringDate)
                {
                    expire = true;
                }
                else
                {
                    //Continue execution
                }
            }

1 Ответов

Рейтинг:
1

Jochen Arndt

Читал ваши инструкции:

DateTime expiringDate = mainDate.AddDays(1);
if (mainDate > expiringDate)
Оно всегда ложно, потому что expiringDate = mainDate + 1 day.

Вы должны сравнивать expiringDate с текущей датой:
if (DateTime.Now() > expiringDate)


Uwakpeter

я не хочу использовать системную дату, любой другой способ сделать это?

Jochen Arndt

Какую дату вы хотите использовать вместо текущей?

Uwakpeter

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

Jochen Arndt

Да, может. Но это не отвечает на мой вопрос "какую дату вы хотите использовать вместо текущей даты".

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