Entwickler-Ecke

Internet / Netzwerk - ORT Not understood


smepal - Mo 05.05.08 12:08
Titel: ORT Not understood
dieser Fehler taucht bei mir ab und zu auf!
Was hat das zu bedeuten?


GericasS - Mo 05.05.08 12:09
Titel: Re: ORT Not understood
user profile iconsmepal hat folgendes geschrieben:
dieser Fehler taucht bei mir ab und zu auf!
Was hat das zu bedeuten?


hab diese Antwort auf einem anderen Board gefunden


Zitat:
Not sure if it's the same for FTP as HTTP error messages, but 5xx normally means its an internal server error, get in touch with your host and see what they have to say about it, I think the problem is with the host.


smepal - Mo 05.05.08 12:48

Nicht so richtig!

Der Fehler erscheint nur bei einer größeren FTP Abfrage:

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:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
procedure TForm1.syncbtClick(Sender: TObject);
var
i,e, v,r,p: Integer;
serverlist, serverlistcl, pclist, pclistcl: TStringlist;
within: Boolean;
begin
serverlist:= Tstringlist.Create;
chronik.Items.add('Serverlist erstellt!');
pclist:= Tstringlist.Create;
chronik.Items.add('PClist erstellt!');
serverlistcl:= Tstringlist.Create;
chronik.Items.add('ServerlistCL erstellt!');
pclistcl:= Tstringlist.Create;
chronik.Items.add('PClistCL erstellt!');
for i:= 0 to sync_dirs.Count-1 do
  begin
  if sync_dirs.Checked[i] then
    begin
//----------Laden der beiden Dateilisten----------------//
    ftp.ChangeDir(sync_dirs.Items[i]);
    chronik.Items.add('Ordner: '+ sync_dirs.Items[i]);
    getfilesinserverdir('',sync_dirs.Items[i],ftp,serverlist,serverlistcl,chronik);

//----------HIER MUSS PCLIST NOCH EINGELESEN WERDEN!!!!!!!!!!!!!!!!!---//
      if not (directoryexists(pcpath+'\'+sync_dirs.Items[i])) then forcedirectories(pcpath+'\'+sync_dirs.Items[i]);
      GetFilesInDirectory(pcpath+'\'+ sync_dirs.Items[i],'','*.*',pclist,true);
     chronik.Items.add('PClistCL befüllen');
     for e:=0 to pclist.Count-1 do
      begin
      if ((pclist[e] <> '.'and (pclist[e] <> '..')) then
        begin
        pclistcl.Add(pclist[e]);
        chronik.Items.add('      PClistCL hinzufügen: '+ pclist[e]);
        end;
      end;
//Vergleichen der PC mit der Serverliste und holen fehlender Dateien//
    chronik.Items.add('Start Vergleich');
    for v:=0 to serverlistcl.Count-1 do
      begin
      r :=0;
      within:=false;
      if pclistcl.Count<>0 then
        begin
        repeat
          begin
          chronik.Items.Add('         Vergleiche: '+serverlistcl[v]+' mit ' + pclistcl[r]);
          if serverlistcl[v] <> pclistcl[r] then within:= false else within := true;
          P:=r;
          inc(r);
          end;
        until
          (within = true) OR (pclistcl.Count = r);
        end
        else
        within := false;

      if within = false then
        begin
        ftp.Get(serverlistcl[v],pcpath+'/'+sync_dirs.Items[i]+'/'+ serverlistcl[v],true);
        chronik.Items.add('Kopiere: '+serverlistcl[v]);
        end
        else
        chronik.Items.add('Schon vorhanden: '+serverlistcl[v]);
//      else
//        begin
//        if ((GetFileLastAccessTime(pcpath+'\'+sync_dirs.Items[i]+'\'+ serverlistcl[v]) < dates.ReadDateTime('Files',serverlistcl[v], strtodatetime('02.05.2008 00:00:00'))))    then
//          begin
//          chronik.Items.Add('              Serverversion ist neuer!');
//          chronik.Items.Add('              '+datetimetostr(GetFileLastAccessTime(pcpath+'\'+sync_dirs.Items[i]+'\'+ serverlistcl[v]))+' < '+ datetimetostr(dates.ReadDateTime('Files',serverlistcl[v], strtodatetime('02.05.2008 00:00:00'))));
//          ftp.Get(serverlistcl[v],pcpath+'\'+sync_dirs.Items[i]+'\'+ serverlistcl[v], true);
//          chronik.Items.add('Kopiere: '+serverlistcl[v]);
//         end
//        else if (GetFileLastAccessTime(pcpath+'\'+sync_dirs.Items[i]+'\'+ serverlistcl[v]) > dates.ReadDateTime('Files',serverlistcl[v], strtodatetime('02.05.2008 00:00:00')))then
//          begin
//          chronik.Items.Add('              PCversion ist neuer!');
//          chronik.Items.Add('              '+datetimetostr(GetFileLastAccessTime(pcpath+'\'+sync_dirs.Items[i]+'\'+ serverlistcl[v]))+' > '+ datetimetostr(dates.ReadDateTime('Files',serverlistcl[v], strtodatetime('02.05.2008 00:00:00'))));
//          dates.WriteDateTime('Files',serverlistcl[v], now);
//          ftp.Put(pcpath+'\'+sync_dirs.Items[i]+'\'+ serverlistcl[v],serverlistcl[v],true);
//          dates.WriteDateTime('Files',serverlistcl[v], now);
//          chronik.items.add('Lade hoch: '+serverlistcl[v]);
//          end
//        else if (GetFileLastAccessTime(pcpath+'\'+ serverlistcl[v]) = dates.ReadDateTime('Files',serverlistcl[v], strtodatetime('02.05.2008 00:00:00')))then
//        chronik.items.add('Versionen sind gleich!');
//        end;
      end;
    chronik.Items.add('Ende Vergleich');
    serverlist.Clear;
    pclist.clear;
    pclistcl.Clear;
    serverlistcl.Clear;
    ftp.ChangeDirUp;
    end;
  end;
//dates.UpdateFile;
end;


Und auch dann nur, wenn er Dateien aus verschiedenen Ordnerebenen kopieren soll!

Filezilla schafft das ohne Probleme und mein Tool bis gestern auch!