Entwickler-Ecke

Internet / Netzwerk - Indy: Mit IdFTP Ordner übertragen


fcg - Mi 23.04.03 18:33
Titel: Indy: Mit IdFTP Ordner übertragen
hi

geht das Irgendwie mit der IdFTP Kompo?? (Habe Delphi6)

thÄnxX

fcg


Moritz M. - Sa 26.04.03 12:34

Soweit ich weiß, gibt es dafür keine direkte Funktion. Da musst du wohle selber eine Rekursive Funktion für schreiben.


fcg - Sa 26.04.03 15:04

naja dann, gut das morgen Sonntag ist.


Moritz M. - Sa 26.04.03 15:05

*gg* viel Spaß dabei, so schwer ist das nicht.


fcg - Sa 26.04.03 15:44

Hast du sowas schon maleschrieben?? Wenn ja, kannste es ja mla posten.


Moritz M. - Sa 26.04.03 15:48

Schon öfters, ist nicht schwer. Versuchst einfach mal und liest dir das Tutorial über Rekursion hier im Forum durch.


fcg - Mo 28.04.03 21:10

so, bin jetzt soweit, das ich alle dateien ausgelens habe. nur muss ich aber doch auch noch kontrollieren, ob der Ornder aufm sever exicistiert (wenn nicht ihn erstellen) und die Unterordner auch, aber wie????

thÄnxX


Moritz M. - Di 29.04.03 13:34

Da sollte es eine Funktion names FolderExists oder DirExists geben, wenn mich nicht alles täsucht.


fcg - Di 29.04.03 16:08

ne, die gibts nicht (zumindest nicht, die du gepostet hast, und so änlich habe ich auch nciht geunden). es klappt jetzt alles mit dem Dateien auslesen und den Ordnern bzw Pfadangaben, allerdings habe ich och keine Idee, wie ich die ordner und Unterordner erstellen soll.


Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
procedure TForm1.GetDirectory(ADirectory: string; AMask: String; AList: TStrings; ARekursiv: Boolean);
var
  SR  : TSearchRec;
begin

 if (ADirectory<>'') and (ADirectory[length(ADirectory)]<>'\') then
    ADirectory:=ADirectory+'\';

  if (FindFirst(ADirectory+AMask,faAnyFile-faDirectory,SR)=0) then begin
    repeat
      if (SR.Name<>'.') and (SR.Name<>'..') and (SR.Attr<>faDirectory) then
          AList.Add(ADirectory+SR.Name);
    until FindNext(SR)<>0;
    FindClose(SR);
  end;

  if ARekursiv then
    if (FindFirst(ADirectory+'*.*',faDirectory,SR)=0) then
    begin
      repeat
        if (SR.Name<>'.') and (SR.Name<>'..') then
          GetDirectory(ADirectory+SR.Name,AMask,AList,True);
      until FindNext(SR)<>0;
      FindClose(SR);
    end;
end;


habe die prozedure der faq eingebunden. ist ja soweit auch logisch. aber an welche stelle hier kann ich nurn sagen Upload, und wie muss ich dat mit den ordner machen??

thÄnxX

fcg


O'rallY - Di 29.04.03 16:37

Die Funktion die Onz meinte heißt DirectoryExists. Außerdem kannst du mit dem Befehl MkDir ein Verzeichnis erzeugen. Mehr solltest du eigentlich nicht brauchen!


fcg - Do 01.05.03 12:11

O'rallY hat folgendes geschrieben:
Die Funktion die Onz meinte heißt DirectoryExists.


Die Funktion gibt es bei mir nicht (Delphi 6)! Das mit MakeDir ist schon klar...

fcg