Delphi уроки: Учимся ставить ограничения

Опубиковано: 20.08.2008 г., автор: , просмотров: 33319

Delphi уроки. Временное ограничение на работу программы.

В этом уроке я покажу вам 2 способа поставить временное ограничение на работу программы.

 

Способ №1 Более интересный.

Первое что нам нужно сделать это кинуть на форму 2 компонента label с закладки Standart и один компонент timer с закладки system.
Объявляем переменные: для реализации данного способа нам понадобиться две глобальные переменные:

1) Opentime
2) Closetime тип у них будет tDateTime

В общем если кто не понял то после ключевого слова var пишем вот такую строчку:
closetime, opentime: tdatetime; сразу скажу что если вы хотите чтобы информационная безопасность фирмы или вашей программы была на высоте, данный способ придется в разы усложнить, здесь показан лишь простой пример...

Идем дальше, теперь создаем обработчик событий на форме OnCreate - для этого просто кликаем на форме 2 раза
между begin end пишем следующий код:

opentime:= time; //Функция time выдает нам время в данный момент
closetime:= opentime+strtotime('00:00:30');
//Здесь мы добавляем к времени старта нужное время.
//В данном случае - в формате чч:мм:сс

label1.Caption:=timetostr(opentime);

С формой разобрались, переходим к таймеру также создаем обработчик событий на нем OnTime
Между begin end; пишем:

if time > closetime then //Если текущее время > времени окончания //программы то
begin
showmessage('Время работы программы истекло ! '); //Показываем //сообщение
close; //закрываем программу
end;
Label2.Caption:=timetostr(opentime-closetime); // иначе показываем время //до завершения программы

Вот в принципе и все, осталось только выставить true в свойстве Enabled у таймера.

 

Способ №2 Более простой.

Кидаем на форму компонент timer с закладки system. Свойство Enabled выставляем на true. Свойство Interval ставим равное 30000 (через 30 сек программа закроется).
Создаем обработчик событий Ontime в нем прописываем следующий код

showmessage('Время работы программы истекло ! ');
close;

Вот и все!

P.S. Не забываем подписываться на бесплатную мультимедийную рассылку.
Форма для подписки расположена с права и с лева.



Похожие материалы

Последние из рубрики

Kuka 13 Oct 2012 в 00:00 #
а как запустить таймер если во время игры нажать кнопку *Новая игра* подскажите плиииз.
Bezuma 19 Sep 2012 в 00:00 #
Спасибо. Потестировал, лучше получается если сделать так:
procedure TForm1.Timer3Timer(Sender: TObject);
begin
opentime:= time; //Функция time выдает нам время в данный момент
//if time > closetime then //Если текущее время > времени окончания //программы то
begin
showmessage(′Время работы программы истекло ! ′); //Показываем //сообщение
close; //закрываем программу
end;
Label3.Caption:=timetostr(opentime);//показывает время на данный момент
Label4.Caption:=timetostr(opentime-closetime); // иначе показываем время до завершения программы
end;
Максим 06 Feb 2012 в 00:00 #
Проще просто поставить таймер на 1 мин например, и в таймере прописать inc(t). Если нужно ограничить работу программы на 30 мин, то в таймере смотреть, когда t будет равно 30. После записать куда-нибудь, что триал время прошло (например в реестр) и закрыть программу. Так же при запуске программы нужно ей проверять эту запись и делать выводы - запускаться ей или нет.
directx 03 Feb 2012 в 00:00 #
извените меня за мову я из Украъни
directx 03 Feb 2012 в 00:00 #
а што делать если например нажать на клавишу и время астановитса....падскажите пажалуста

ОтменитьДобавить комментарий