ВУЗ:
Составители:
14
WriteInteger('MaxRun', N)
end;
Free
end;
if N>0 then
begin
Application.CreateForm(TForm1, Form1);
Form1.Label2.Caption := IntToStr(N-1);
Application.Run;
end else
ShowMessage('Исчерпано максимальное количество запусков пробной версии
программы')
end.
При использовании защит, основанных на контроле даты выполнения или
контроле количества запусков программы, более перспективным является
хранение контрольных параметров в замаскированной форме в файлах,
выбранных самим разработчиком и хранимых в произвольном месте (например,
среди вспомогательных файлов самого приложения). При подобном подходе
актуальной становится маскировка обращений к файлам, в которых хранятся
текущие значения контрольных параметров. Общеизвестно, что при любом
изменении содержимого файла операционная система автоматически
корректирует внешние характеристики файла, такие, как длина, время и дата
создания, которые хранятся в файловой системе.
Изменение даты и времени файла
Использование процедуры FileSetDate(Handle: Integer; newDate: TDateTime);
Handle – указатель (дескриптор) обрабатываемого файла, может быть определен с
помощью
- функции API-Windows FileOpen, например
var Handle: Integer;
. . . . . . . . .
Handle := FileOpen(filename, fmOpenReadWrite);
FileSetDate(Handle, Datetimetofiledate(newtime));
FileClose(Handle);
- свойства Handle класса F
var TheFile: file;
T ileRec, например
. . . . . . . . .
AssignFile(TheFile, FileName);
Reset(TheFile);
FileSetDate(TFileRec(TheFile).Handle, DateTimeToFileDate(newDate));
Close(TheFile);
Использование процедуры SetFileTime
procedure ChangeDate(FileName: string);
var i: TDate;
Handle: Integer;
f: TFileTime;
s: TSystemTime;
begin
Handle := CreateFile(PChar(FileName), $0100, 0, nil, OPEN_EXISTING,
FILE_FLAG_BACKUP_SEMANTICS, 0);
14
WriteInteger('MaxRun', N)
end;
Free
end;
if N>0 then
begin
Application.CreateForm(TForm1, Form1);
Form1.Label2.Caption := IntToStr(N-1);
Application.Run;
end else
ShowMessage('Исчерпано максимальное количество запусков пробной версии
программы')
end.
При использовании защит, основанных на контроле даты выполнения или
контроле количества запусков программы, более перспективным является
хранение контрольных параметров в замаскированной форме в файлах,
выбранных самим разработчиком и хранимых в произвольном месте (например,
среди вспомогательных файлов самого приложения). При подобном подходе
актуальной становится маскировка обращений к файлам, в которых хранятся
текущие значения контрольных параметров. Общеизвестно, что при любом
изменении содержимого файла операционная система автоматически
корректирует внешние характеристики файла, такие, как длина, время и дата
создания, которые хранятся в файловой системе.
Изменение даты и времени файла
Использование процедуры FileSetDate(Handle: Integer; newDate: TDateTime);
Handle – указатель (дескриптор) обрабатываемого файла, может быть определен с
помощью
- функции API-Windows FileOpen, например
var Handle: Integer;
. . . . . . . . .
Handle := FileOpen(filename, fmOpenReadWrite);
FileSetDate(Handle, Datetimetofiledate(newtime));
FileClose(Handle);
- свойства Handle класса TFileRec, например
var TheFile: file;
. . . . . . . . .
AssignFile(TheFile, FileName);
Reset(TheFile);
FileSetDate(TFileRec(TheFile).Handle, DateTimeToFileDate(newDate));
Close(TheFile);
Использование процедуры SetFileTime
procedure ChangeDate(FileName: string);
var i: TDate;
Handle: Integer;
f: TFileTime;
s: TSystemTime;
begin
Handle := CreateFile(PChar(FileName), $0100, 0, nil, OPEN_EXISTING,
FILE_FLAG_BACKUP_SEMANTICS, 0);
Страницы
- « первая
- ‹ предыдущая
- …
- 12
- 13
- 14
- 15
- 16
- …
- следующая ›
- последняя »
