Zitat von
DeddyH:
Zitat von
himitsu:
Nicht unbedingt das Schellste, aber es läuft zuverlässig:
Solange SL nicht leer ist
Zuverlässig im Sinne von das Ergebnis liefert den richtigen Pfad ...
von vorhandener Fehlerprüfung/-behandlung hab ich nichts gesagt.
Aber wenn es sein muß,dann entweder diese Zeile
S := SL[0] + '\';
hierdurch ersetzen
Delphi-Quellcode:
if SL.Count = 0 then S := ''
else S := SL[0] + '\';
oder alles überspringen
Delphi-Quellcode:
if SL.Count > 0 then
begin
S := SL[0] + '\';
repeat
...
until B;
end
else
S := '';
ShowMessage(S);
Erst den kürzesten Pfad suchen hab ich absichtlich weggelassen,
denn entweder ist der erste Pfad schon der Kürzeste oder er wird solange gekürzt, bis es paßt.