Внешний вид сайта:

Создание триальных приложений в Delphi

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

Только одна программа за сеанс Windows

Если Вам нужно позволить пользователю выполнить Ваше приложение только один раз за сеанс Windows, Вы можете использовать следующую "уловку":

Для простоты форма будет называться FormMain.

Для создания приложения TrialSessionWindows, Вы должны вручную отредактировать исходный текст проекта (DPR).

Использование функций API GlobalFindAtom и GlobalAddAtom, Вам потребуется использование модуля Windows в секции uses.

Когда пользователь запускает приложение, код проверяет создана ли строка УНИКАЛЬНЫЙ-ТЕКСТ в глобальной таблице атомов Windows. Если атом не найден, приложение запускается, а строка добавляется в таблицу атомов.

Когда пользователь запускает приложение второй раз, выскакивает предупреждение Защита триальной версии, а приложение прекращает работу, даже не запустившись.

Oops!

Пользователь может только запустить это приложение во второй раз, когда перезапустит Windows (когда будет очищена глобальная таблица переменных атомов).

program OncePerSessionTrialTest;

uses
  Windows,
  Forms,
  mainUnit in 'mainUnit.pas' {FormMain};

{$R *.res}

begin
  Application.Initialize;

  if 0 = GlobalFindAtom('УНИКАЛНЫЙ-ТЕКСТ') then
  begin
    GlobalAddAtom('УНИКАЛЬНЫЙ-ТЕКСТ') ;

    Application.CreateForm(TFormMain, FormMain) ;
    Application.Run;
  end
  else
  begin
    Application.MessageBox(
      'Вы можете выполнить триальную версию ' + #13 +
      'этого приложения ' + #13 +
      'только один раз за сеанс Windows!',
      'Защита Триальной Версии') ;
  end;
end.

Примечание: В Windows таблица атомов - это определенная системой таблица, которая хранит строки и соответствующие идентификаторы. Приложение помещает строку в таблицу атомов и получает 16-разрядное целое число, которое называется атомом, который может использоваться для обращения к строке.

Комментарии

Нет комментариев. Ваш будет первым!