Советы по Delphi

       

Пример защиты типа SHAREWARE


Приведу небольшой участок кода, позволяющий быстро создать защиту для SHAREWARE-программ, которая, тем не менее не ущемляет функциональность программы, но настоятельно просит ее зарегистрировать и закрывает ее при каждом повторном запуске (жестоко, да? :) )

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

Используйте обработчик события FormShow:

procedure TForm1.FormShow(Sender : TObject);
var atom : integer;
CRLF : string;begin
if
GlobalFindAtom('THIS_IS_SOME_OBSCUREE_TEXT') = 0 thenatom := GlobalAddAtom('THIS_IS_SOME_OBSCUREE_TEXT')elsebeginCRLF := #10 + #13;ShowMessage('Данная версия предусматривает только один запуск в текущем сеансе Windows.' + CRLF +'Для повторного запуска вам необходимо перезапустить Windows, или, что лучше:' + CRLF +'ЗАРЕГИСТРИРУЙТЕСЬ !!');Close;end;end;

Преимущество данного метода в том, что пользователь может воспользоваться всей функциональностью программы, но только до момента закрытия программы и перезапуска системы! Вся хитрость заключается в сохранении некоторой строки в системных глобальных переменных ("атомах") и последующей проверке ее в таблице "атомов" системы. [000298]



Содержание раздела