si en el directorio raiz del FTP (/tmp) no hay ningun archivo con extension .DAT me devuelve una excepción "*.*: No such file or directory." , si hay alguna fichero con esa extension funciona perfectamente.
Devuelve algun parámetro la función idFTP.List para saber si está vacío o no el directorio?
Código Delphi
[-]
function TIfSGFTP.ListaArchivos(extension: string = '*'): TStrings;
var
x: Integer;
begin
try
miListaArchivos := TStringList.Create;
TStringList(miListaArchivos).Sorted := True;
if FIdFTP.Connected then
FIdFTP.List(miListaArchivos, '*.*', False);
if extension <> '*' then
begin
extension := '.' + UpperCase(extension);
x := 0;
while x <= (miListaArchivos.Count -1) do
if UpperCase(ExtractFileExt(miListaArchivos[x])) = extension then
Inc(x)
else
miListaArchivos.Delete(x);
end;
Result := miListaArchivos;
except
on E:Exception do
begin
EscribeLog('ERROR', 'Error obteniendo la lista de archivos en directorio FTP');
EscribeLog('ERROR', E.Message);
raise;
end;
end;
end;
listaArchivos ('DAT');
un saludo y gracias.