Może tak:
var CurrData: String;
if not IdFTP.Connected then
IdFTP.Connect;
IdFTP.MakeDir(User); {tworzymy katalog}
IdFTP.ChangeDir(User); {jesteśmy w ../User/}
CurrData:= FormatDateTime('YYYY-MM-DD-HH-NN-SS', Now); {zapamiętujemy aktualną date}
IdFTP.MakeDir(CurrData); {tworzymy katalog}
IdFTP.ChangeDir(CurrData); {jesteśmy w ../User/JakaśData/}
for i:=0 to PoliczSS('D:\') - 1 do
IdFTP.Put('D:\' + IntToStr(i) + '.jpg', IntToStr(i) + '.jpg', false); {dodajemy pliki}
IdFTP.Disconnect;
W każdym razie wywala błąd,
IdFTP.MakeDir('/' +User+'/'+ FormatDateTime('YYYY-MM-DD-HH-NN-SS', Now)); {np. 2008-11-24-21-14-13}
for i:=0 to PoliczSS('D:\')-1 do
IdFTP.Put('D:\'+IntTOStr(i)+'.jpg','/' +User+'/' + FormatDateTime('YYYY-MM-DD-HH-NN-SS', Now) + '/' +IntToStr(i)+'.jpg');
{tu będzie późniejszy czas, np. 2008-11-24-21-14-45}
IdFtp.Disconnect;
ponieważ od procedury MakdeDir do PoliczSS mija pewien czas i to powoduje brak znalezienia folderu.