![]() |
![]() ![]() ![]() ![]() |
|
Изменение даты создания каталогаDelphi , Файловая система , Директории
Автор: Dimka Maslov
{ **** UBPFD *********** by delphibase.endimus.com ****
>>
Две перегруженные функции, изменяющие дату и время создания каталога.
Первая принимает непосредственные значения года, месяца, дня, часа,
минут и секунд. Во второй дата и время указываются в формате TDateTime.
См. также: http://delphibase.endimus.com/?action=viewfunc&topic=fileattr&id=10496
Зависимости: Windows
Автор: Dimka Maslov, mainbox@endimus.com, ICQ:148442121, Санкт-Петербург
Copyright: Dimka Maslov
Дата: 4 февраля 2004 г.
***************************************************** }
function SetDirTime(const Dir: string; Year, Month, Day, Hour, Minute, Second:
Word): Boolean; overload;
var
H: Integer;
F: TFileTime;
S: TSystemTime;
begin
H := CreateFile(PChar(Dir), $0100, 0, nil, OPEN_EXISTING,
FILE_FLAG_BACKUP_SEMANTICS, 0);
if H <> -1 then
begin
S.wYear := Year;
S.wMonth := Month;
S.wDay := Day;
S.wHour := Hour;
S.wMinute := Minute;
S.wSecond := Second;
SystemTimeToFileTime(S, F);
LocalFileTimeToFileTime(F, F);
Result := Boolean(SetFileTime(H, @F, @F, @F));
CloseHandle(H);
end
else
Result := False;
end;
function SetDirTime(const Dir: string; DateTime: TDateTime): Boolean; overload;
var
H: Integer;
F: TFileTime;
S: TSystemTime;
begin
H := CreateFile(PChar(Dir), $0100, 0, nil, OPEN_EXISTING,
FILE_FLAG_BACKUP_SEMANTICS, 0);
if H <> -1 then
begin
DateTimeToSystemTime(DateTime, S);
SystemTimeToFileTime(S, F);
LocalFileTimeToFileTime(F, F);
Result := Boolean(SetFileTime(H, @F, @F, @F));
CloseHandle(H);
end
else
Result := False;
end;
Пример использования:
if not SetDirTime('c:\Program Files', 2004, 2, 4, 12, 0, 0) then
ShowMessage('Error!');
Вот перевод текста на русский язык: Код-snippet на Delphi, который предоставляет два перегруженных функции для установки времени создания директории. Первая функция принимает отдельные значения года, месяца, дня, часа, минуты и секунды, а вторая функция принимает значение типа TDateTime. Вот разбивка кода: Функция Эта функция создает файловый.handle для директории с помощью Функция Эта функция аналогична первой, но принимает значение типа TDateTime вместо. Она конвертирует это время и дату в системное время ( Пример использования В примере показано, как использовать вторую перегруженную функцию для установки времени создания директории 4 февраля 2004 года в 12:00:00. Если операция неудачна, она отображает сообщение об ошибке с помощью Предложения и улучшения
Вот обновленная версия кода с улучшенной организацией и обработкой ошибок: В обновленной версии я ввел новый тип Описание двух перегруженных функций для изменения даты создания каталога в Delphi. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш :: Главная :: Директории ::
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 | ||||