Resulta que cuento los subdirectorios que hay en un directorio, utlizando el siguiente procedimiento, al cual le agregue un StringList, para almacenar los nombres de los directorios que cuenta:
Código Delphi
[-]
var Lista: TStrings;
...
function NumeroSubDirectorios(directorio: string;
ocultos, sistema, soloLectura: boolean) : integer;
var
SR: TSearchRec;
atributos: Cardinal;
begin
Lista:=TStringList.Create;
Lista.Clear;
Result := 0;
atributos := faDirectory;
if ocultos then atributos := atributos or faHidden;
if sistema then atributos := atributos or faSysFile;
directorio := IncludeTrailingPathDelimiter(directorio);
if FindFirst(directorio +'*', atributos, SR) = 0 then
begin
repeat
if (SR.Name <> '.') and (SR.Name <> '..')
and DirectoryExists(directorio + SR.Name)
then begin
Inc(Result);
Lista.Add(SR.Name);
end
until FindNext(SR) <> 0;
SysUtils.FindClose(SR);
end;
end;
Pero cuando quiero ir al ultimo elemento de la siguiente manera...
Código Delphi
[-]
...
if Lista.Count>0
then begin
ShowMessage(IntToStr(Lista.Count)+' - '+Lista.String[Lista.Count-1]);
end;
end;
...
Siempre me muestra el primer elemento. Porque? que hago mal?
Saludos y Gracias
__________________
Código Delphi
[-]
try
ProgramarMicro(80C52,'Intel',MnHex,True);
except
On Exception do
MicroChip.IsPresent(True);
end;