Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
KANSoftWare

Лимит на время выполнения программы

Delphi , Синтаксис , Дата и Время

Лимит на время выполнения программы

Оформил: DeeCo
Автор: http://www.swissdelphicenter.ch

{ 
  In der Projekt Datei (.dpr): 
  In your project's file (.dpr): 
}

 uses
   Forms, Sysutils, Dialogs,
   MyProgr in my_prog1.pas {Form1};

 const
   email = 'my.mail@provider.xyz';
   homepage = 'http://www.myhomepage.com';

   // Limit the execution time to 04/21/2003. 
  // Gultigkeit auf 21. April 2003 begrenzen. 

  YearExp = 2003;
   MonthExp = 4;
   DayExp = 21;

 function CheckDate(y, m, d: Integer): Boolean;
 begin
   Result := True;
   if (Date > EncodeDate(y, m, d)) then
   begin
     ShowMessage('End of usage exceeded. Download a new'+
                  'version at' + ^j + homepage+ ^j + ' or contact: ' + email);
   Result := False;
   // halt; 
end;

 end;


 {$R *.RES}

 begin
   if CheckDate(YearExp, MonthExp, DayExp) then
   begin
     Application.Initialize;
     Application.Title := 'Some Title';
     Application.CreateForm(TForm1, Form1);
     Application.Run;
   end;

 end.

Программа на Delphi, ограничивающая время выполнения до 21 апреля 2003 года. Вот подробное описание того, что код делает:

Настройки проекта Программный файл (.dpr) использует несколько модулей: Forms, Sysutils, Dialogs и пользовательский модуль MyProgr в файле my_prog1.pas.

Константы Две константы определены: email (строка с адресом электронной почты) и homepage (строка с URL-адресом).

Ограничение времени выполнения Три целочисленных переменных (YearExp, MonthExp и DayExp) определяют ограничение времени выполнения как 21 апреля 2003 года.

Функция CheckDate Функция CheckDate принимает три целочисленных параметра: y (год), m (месяц) и d (день). Она проверяет, является ли текущая дата более поздней, чем указанное ограничение времени выполнения. Если это так, функция отображает сообщение с предупреждением о превышении срока использования, а также инструкции по загрузке новой версии или контакту с автором через электронную почту.

Основная программа Основная программа проверяет, превышено ли ограничение времени выполнения, вызывая функцию CheckDate. Если нет, программа инициализирует приложение, устанавливает его заголовок, создает форму (Form1) и запускает приложение.

Альтернативное решение Если вы хотите ограничить время выполнения без использования фиксированной даты, как 21 апреля 2003 года, можно рассмотреть более динамичный подход:

  • Использовать тайм-стамп или счетчик для отслеживания времени выполнения.
  • Установить максимально допустимое время выполнения в секундах или миллисекундах.
  • Сравнивать текущее время выполнения с ограничением и отображать предупреждение, если превышено.

Например, можно использовать функцию GetTickCount из модуля System, чтобы получить текущий тайм-стамп в миллисекундах. Затем можно сравнить его с фиксированным значением (например, 24 часа * 60 минут * 1000 миллисекунд = 86,400,000) и отображать предупреждение, если превышено:

const
  MaxExecutionTime: integer = 86400000; // 24 hours

function CheckExecutionTime: Boolean;
begin
  Result := True;
  if GetTickCount > MaxExecutionTime then
  begin
    ShowMessage('End of usage exceeded. Download a new version...');
    Result := False;
  end;
end;

Этот подход позволит вам установить ограничение времени выполнения более динамически и без использования фиксированной даты.

Статья описывает пример программы на языке Pascal, которая ограничивает выполнение своей работы по дате, указанной константами YearExp, MonthExp и DayExp.


Комментарии и вопросы

Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS




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


:: Главная :: Дата и Время ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-08-19 13:29:56
2024-11-21 14:23:18/0.0056188106536865/1