Ver Mensaje Individual
  #1  
Antiguo 03-02-2016
Ramsay Ramsay is offline
Miembro
NULL
 
Registrado: ene 2016
Posts: 104
Reputación: 9
Ramsay Va por buen camino
Cambiar fecha y hora

Hola , estoy tratando de cambiar la fecha y hora de un archivo con este codigo.

Código Delphi [-]
const
  FILE_WRITE_ATTRIBUTES = $0100;

procedure SetFileCreationTime(const FileName: string; const DateTime: TDateTime);
var
  Handle: THandle;
  SystemTime: TSystemTime;
  FileTime: TFileTime;
begin
  Handle := CreateFile(PChar(FileName), FILE_WRITE_ATTRIBUTES,
    FILE_SHARE_READ or FILE_SHARE_WRITE, nil, OPEN_EXISTING,
    FILE_ATTRIBUTE_NORMAL, 0);
  if Handle=INVALID_HANDLE_VALUE then
    RaiseLastOSError;
  try
    DateTimeToSystemTime(DateTime, SystemTime);
    if not SystemTimeToFileTime(SystemTime, FileTime) then
      RaiseLastOSError;
    if not SetFileTime(Handle, @FileTime, nil, nil) then
      RaiseLastOSError;
  finally
    CloseHandle(Handle);
  end;
end;

procedure TForm1.btntestClick(Sender: TObject);
var
  DateTime: TDateTime;
begin
  DateTime := StrToDateTime('6/7/1998 14:00:20');
  SetFileCreationTime(paramstr(0), DateTime);
end;

El tema es que la fecha la cambia bien , pero la hora siempre aparece como 3 horas antes o 5 despues.

¿ Cual es el problema ?
Responder Con Cita