Hallo,
hier ist noch eine Routine (ohne Gewähr):
Delphi-Quellcode:
// uses StrUtils
procedure OptimizePathList (aSource, aTarget: TStrings);
var
i, j : Integer;
Path : string;
begin
aTarget.Clear;
for i := 0 to aSource.Count - 1 do
begin
Path := ExpandUNCFileName(aSource[i]);
if (path = '') then
// Exit;
Continue;
for j := aTarget.Count - 1 downto 0 do
if AnsiStartsText(aTarget[j], Path) then
begin
Path := '';
Break;
end
else
if AnsiStartsText(Path, aTarget[j]) then
aTarget.Delete(j);
if (Path <> '') then
aTarget.Add(Path);
end;
end;
// Edit: Continue statt Exit...
Gruß Hawkeye