Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.11.28;
Скачать: CL | DM;

Вниз

Файлы   Найти похожие ветки 

 
Viper ©   (2004-10-15 21:45) [0]

Как узнать когда был создан файл, например с:\1.txt и
когда он был изменен?
И если можно эти значения редактировать, то как?


 
GuAV ©   (2004-10-15 22:00) [1]


> Как узнать когда был создан файл, например с:\1.txt и
> когда он был изменен?

GetFileTime

> И если можно эти значения редактировать, то как?

SetFileTime


 
Viper ©   (2004-10-15 22:12) [2]

Огромное спасибо!!!


 
Viper ©   (2004-10-16 11:52) [3]

>GetFileTime
>SetFileTime
что-то я немогу разобраться с параметрами можешь написать пример
для с:\1.txt как использовать SetFileTime и GetFileTime


 
GanibalLector ©   (2004-10-16 12:20) [4]

function GetFileTimes(const FileName: string; var Created: TDateTime;
var Accessed: TDateTime; var Modified: TDateTime): Boolean;
var
 h: THandle;
 Info1, Info2, Info3: TFileTime;
 SysTimeStruct: SYSTEMTIME;
 TimeZoneInfo: TTimeZoneInformation;
 Bias: Double;
begin
 Result := False;
 Bias   := 0;
 h      := FileOpen(FileName, fmOpenRead or fmShareDenyNone);
 if h > 0 then  
 begin
   try
     if GetTimeZoneInformation(TimeZoneInfo) <> $FFFFFFFF then
       Bias := TimeZoneInfo.Bias / 1440; // 60x24
     GetFileTime(h, @Info1, @Info2, @Info3);
     if FileTimeToSystemTime(Info1, SysTimeStruct) then
       Created := SystemTimeToDateTime(SysTimeStruct) - Bias;
     if FileTimeToSystemTime(Info2, SysTimeStruct) then
       Accessed := SystemTimeToDateTime(SysTimeStruct) - Bias;
     if FileTimeToSystemTime(Info3, SysTimeStruct) then
       Modified := SystemTimeToDateTime(SysTimeStruct) - Bias;
     Result := True;
   finally
     FileClose(h);
   end;
 end;
end;


 
Viper ©   (2004-10-16 20:21) [5]

спасибочки...


 
Viper ©   (2004-10-17 23:00) [6]

!
> GanibalLector

 юзал твой пример все ОК
а вот самому написать аналогичную для SETFileTimes  неполучаеться, помоги напиши пример использования для setfiletime


 
GanibalLector ©   (2004-10-18 01:25) [7]

>а вот самому написать аналогичную для SETFileTimes  неполучаеться
А в чем сложность???Или лень???Мне тоже...вот,нашел пример:

function SetFileDateTime(FileName: string; NewDateTime: TDateTime): Boolean;
var
 FileHandle: Integer;
 FileTime: TFileTime;
 LFT: TFileTime;
 LST: TSystemTime;
begin
 Result := False;
 try
   DecodeDate(NewDateTime, LST.wYear, LST.wMonth, LST.wDay);
   DecodeTime(NewDateTime, LST.wHour, LST.wMinute, LST.wSecond, LST.wMilliSeconds);
   if SystemTimeToFileTime(LST, LFT) then
   begin
     if LocalFileTimeToFileTime(LFT, FileTime) then
     begin
       FileHandle := FileOpen(FileName, fmOpenReadWrite or
         fmShareExclusive);
       if SetFileTime(FileHandle, nil, nil, @FileTime) then
         Result := True;
     end;
   end;
 finally
   FileClose(FileHandle);
 end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
 if OpenDialog1.Execute then
   if SetFileDateTime(OpenDialog1.FileName, now) then
     ShowMessage("Date set to now !");
end;



Страницы: 1 вся ветка

Текущий архив: 2004.11.28;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.042 c
14-1100366571
MeF88
2004-11-13 20:22
2004.11.28
VCL или Win API


14-1100089425
panov
2004-11-10 15:23
2004.11.28
"Мои первые книжки"


4-1097821383
shelest
2004-10-15 10:23
2004.11.28
Запуск программы под другим пользователем.


3-1099400743
Nexel
2004-11-02 16:05
2004.11.28
Delphi+Bde+Paradox=Index out of date


14-1100284478
Cheater
2004-11-12 21:34
2004.11.28
Граждане! У кого есть Acrobat Reader!