Hallo allerseits,
langsam, aber sicher verzweifle ich an dem Verhalten von
Indy. Folgendes Problem:
Delphi-Quellcode:
function TF_FTP.VerzeichnisWechsel(Sender: TObject; s: string): boolean;
var
ok: boolean;
tmp: string;
begin
tmp := s;
try
IdFTP2.ChangeDir(s);
ok := true;
except
ok := false;
end;
result := tmp = s;
end;
Dies ist im Prinzip meine Routine zum Verzeichniswechsel.
Wenn das Verzeichnis bereits besteht, funktioniert alles einwandfrei. Wenn das Serververzeichnis noch nicht besteht, ist trotzdem das ok auf true gesetzt und noch seltsamer ist das Verhalten der Variable tmp:
Diese setze ich am Beginn der Routine auf den gleichen Wert wie s.
Nach dem ChangeDir enthält s den Wert, auf welchen tatsächlich geändert wurde. Gleichzeitig wird auch die Variable tmp auf den gleichen Wert von s verändert ??? Die Variable ok ist in jedem Fall immer true.
Wie ist so was möglich?
Ich bin nicht imstande, einen kontrollierten Verzeichniswechsel durchzuführen, wo ich bei Erfolg true und bei Nichterfolg false zurückbekomme.
Was mache ich hier falsch, bzw. wie kann ich einen kontrollierten Verzeichniswechsel realisieren?
mfg
Herbert