Autor Beitrag
Der-DeeJay
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 42



BeitragVerfasst: Mi 05.05.04 17:08 
Moin ,)

Ich hab dad mal wieder ein Problem ;(

Ich habe mit der Indy componente einen FTP Clienten gebaut aber bei mir geht das nich wenn ich schreibe

ausblenden Delphi-Quelltext
1:
if idFTP1.DirectoryListing.Items[x].ItemType = ditDirectory then .......					


er sacht denn immer

[Error] Unit1.pas(39): Statement expected, but expression of type 'TIdDirItemType' found

was muss ich da ändern??


mfg
DeeJay


Zuletzt bearbeitet von Der-DeeJay am Fr 07.05.04 17:36, insgesamt 1-mal bearbeitet
Karlson
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 2088



BeitragVerfasst: Mi 05.05.04 21:00 
Servus!

Was für eine Delphi Version (wenn kleiner als 6 welche Indy version) benutzt du denn? Also bei meinem D6 gibt es den Befehl directorylisting gar nicht!
Und was möchtest du mit dem Befehl überhaupt bezwecken?
Benedikt
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Mi 05.05.04 21:17 
Karlson hat folgendes geschrieben:

Also bei meinem D6 gibt es den Befehl directorylisting gar nicht!

Also spätestens ab Indy9 gibt es die Eigenschaft DirectoryListing, welche sämtliche Items die per List-Kommando geholt wurden, enthält.
Bezwecken möchte er damit wohl, das er abfragt ob der Eintrag x in der Liste ein Verzeichnis ist.

Eigentlich ist auch alles richtig in der Zeile (wenn ich nichts übersehe :) ) - ich bekomme damit keine Probleme.
Poste doch vielleicht nochmal den Code, der sich um diese Zeile herum befindet.
Der-DeeJay Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 42



BeitragVerfasst: Do 06.05.04 16:44 
@Edit:
sorry hab ausversehen auf absenden geklickt und das nich bemerkt :oops:
bitte Beitrag Löschen
THX!


Zuletzt bearbeitet von Der-DeeJay am Do 06.05.04 16:47, insgesamt 1-mal bearbeitet
Der-DeeJay Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 42



BeitragVerfasst: Do 06.05.04 16:45 
Ich habe D7 Trail und Indy 9.0.14(gaub ich;)

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
procedure TForm1.ConnectToFTP1Click(Sender: TObject);
begin
  idFTP1.Host:=Edit1.Text;                                          //  Parameter  und   Connecten 
  idFTP1.Username:=Edit2.Text;
  idFTP1.Password:=Edit3.Text;
  idFTP1.Port:=StrToInt(DBEdit4.Text);
  if CheckBox1.Checked = True then idFTP1.Passive:=True    // mit oder ohne Passiv moded
      else idFTP1.Passive:=False;
  idFTP1.Connect(True);
  ShowMessage('You are CONNECTED!');                       // angeigen
  Panel1.Color:=clLime;
  Panel1.Caption:='Connected';
  for x:=0 to idFTP1.DirectoryListing.Count do               // Ordner und Dateien anzeigen
    if idFTP1.DirectoryListing.Items[x].ItemType=ditDirectory then ListBox1.Items.Add(idFTP1.DirectoryListing.Items[x].Text)
        else ListBox2Items.Add(idFTP1.DirectoryListing.Items[x].Text);
end;


so das sollte reichen oder??
Benedikt hast recht ich will Ordner und Dateien getrennt anteigen hab auch gesehen das das mit idFTP1.List(ListBox1.Items,'.*',False); geht sod as man statt ".*" dann "*" einsetzt und nur Ordner anzeigen lässt aber das klappt nich ;(
ich hoffe ihr könnt mir nun weiter helfen ;)

mfg
DeeJay
Benedikt
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Do 06.05.04 17:14 
Hab mal deinen Code ein wenig überarbeitet, vor allem fehlte dir irgendwie das IdFTP.List.

ausblenden Delphi-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:
27:
28:
procedure TForm1.ConnectToFTP1Click(Sender: TObject); 
var 
  x: Integer;
  Filelist: TStringList;
begin
    idFTP1.Host:=Edit1.Text;                                         
    idFTP1.Username:=Edit2.Text; 
    idFTP1.Password:=Edit3.Text; 
    idFTP1.Port:=StrToInt(DBEdit4.Text); 
    idFTP1.Passive:=CheckBox1.Checked;

    Filelist:=TStringList.Create;

    idFTP1.Connect(True);
    ShowMessage('You are CONNECTED!');                     
    
    idFTP1.List(Filelist);         //List-Kommando ausführen, DirectoryListing wird dadurch gefüllt

    for x:=0 to idFTP1.DirectoryListing.Count-1 do      //Count - 1, damit nicht zuweit gezählt wird
       if idFTP1.DirectoryListing.Items[x].ItemType=ditDirectory then
           ListBox1.Items.Add(idFTP1.DirectoryListing.Items[x].Filename)
       else
           ListBox2.Items.Add(idFTP1.DirectoryListing.Items[x].Filename);

       //Filename statt Text, damit nur der Dateiname angezeigt wird

    FreeAndNil(FileList);
end;


Bei mir funktioniert es damit perfekt.
Der-DeeJay Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 42



BeitragVerfasst: Do 06.05.04 20:50 
Hi

Danke schon ml für die Super schnelle hilfe jedoch haben deine Veränderungen nichts genützt ;(
ich hab mal einen Screenshot davon gemacht:
user defined image
ich hoffe ihr könnt mir trozdem weiter helfen!
ich habe nochmal nach geschaut hab die Indy Version 9.0.4 beta
meint ihr n update würde helfen??

mfg
DeeJay
Martin77
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 282

XP Prof
D6 Prof, D7 Personal, D7 Enterprise, D8 personal
BeitragVerfasst: Fr 07.05.04 06:28 
Bei dir steht unten bei den Messages "undeclared,...." Überprüfe mal deine Uses Klauseln, irgendwas fehlt dir, wohl die unit in der ditDirectory definiert wird ;). Hab leider gerade keine Indys auf dem PC hier, sonst würd ich selbst gucken.


Martin
Benedikt
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Fr 07.05.04 14:32 
Aha - das sagt alles: Bind IdFTPList in deine Uses mit ein.

Achja, und die aktuellste Indy9-Version 9.0.14 würde dich vielleicht vor Inkompatibiliäten mit einigen FTP-Servern bewahren...
Der-DeeJay Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 42



BeitragVerfasst: Fr 07.05.04 17:35 
Juhu ;D

Nun gets

Ich DANKE euch für die schnelle hilfe ! !

mfg
DeeJay