Ver Mensaje Individual
  #2  
Antiguo 11-10-2014
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Reputación: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola GerTorresM.
Cita:
Empezado por GerTorresM Ver Mensaje
...
estoy utilizando código que encontré en la red de esta forma...
Juro que pensé que se trataba de Malbolge

Cita:
Empezado por GerTorresM Ver Mensaje
...deseo recibir un TDirectoryListBox y devolver en forma ordenada por fecha los archivos contenidos en el directorio...
Según entiendo, queres realizar un procedimiento que recibe como parámetros un TDirectoryListBox A y un TListBox B y que devuelve como valor de respuesta una lista compuesta por fecha + '|' + ruta + nombre, ordenada de forma ascendente por fecha, en el TListBox B.

Entonces, y si no interpreté mal la consigna, creo que se puede hacer de forma mucho mas simple:
Código Delphi [-]
procedure SortFilesByAge(DLBox: TDirectoryListBox;  LBox: TListBox);
var
  sr: TSearchRec;
  dir: string;
  ageName: string;
begin
  LBox.Clear;
  dir:= IncludeTrailingPathDelimiter(DLBox.Directory);
  if FindFirst(dir+'*.*',faAnyFile, sr) = 0 then
  begin
    repeat
       if (sr.Attr and faArchive) = faArchive then
       begin
         ageName:= FormatDateTime('yyyymmdd hhmmss|',
           FileDateToDateTime(FileAge(dir + sr.Name))) + dir + sr.Name;
         LBox.Items.Add(ageName);
       end;
    until FindNext(SR) <> 0;
    FindClose(SR);
  end;
  LBox.Sorted:= True;
end;

Ejemplo de llamada:
Código Delphi [-]
...
begin
  SortFilesByAge(DirectoryListBox1, ListBox1);
...

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita