Einzelnen Beitrag anzeigen

Assertor

Registriert seit: 4. Feb 2006
Ort: Hamburg
1.296 Beiträge
 
Turbo C++
 
#6

Re: IndyFTP - Socket Error #10055

  Alt 30. Mär 2010, 17:17
Hallo,

Zitat von shmia:
Scheint ein bekanntes Problem des TCP/IP Stack zu sein:
http://support.microsoft.com/kb/201213/en-us
Nein, das gilt nur für Win9x und NT 4.0, steht ja auch unten auf der Seite

Zitat von ThYpHoOn:
Hab mal geprüft, meine Indy-Komponente setzt im IOHandler.SendBufferSize 32k (32768). Selbst die Halbierung auf 16384 zeigte so keine Wirkung.
Da sehe ich auch keinen Zusammenhang.

Zitat von ThYpHoOn:
Wie kann ich denn den Socket-Modus auf "nonblocking" bzw. "asynchronous" ändern?
Das ist nicht möglich. Indy arbeitet ausschließlich mit Blocking Sockets, so wie es MS empfiehlt.

Zitat von ThYpHoOn:
Als anderen Verdacht habe ich auch noch, dass eventuell der Arbeitsspeicher nicht ausreicht und er versucht die 200MB Datei in den Arbeitsspeicher zu laden und scheitert?
Zitat von ThYpHoOn:
Das vermutliche Problem liegt wohl darin das Indy FTP die komplette Datei die übertragen werden soll in den Arbeitsspeicher läd und dies scheinbar 2-Fach. Also bei einer 250MB Datei kriegt mein Prozess 500MB Arbeitsspeicher-Auslastung. Das ergibt dann wohl die Exception?!
Kennt ihr eine Einstellungsmöglichkeit für Indy um dies zu verhindern?
Ich schließe ein Speicher Problem bei so kleinen Dateien aus. Warum der Prozess statt 250 MB, 500 MB braucht: Debug Optionen sind eingeschaltet - das liegt am Delphi Memory Manager, nicht Indy.

Grundsätzlich: Die Fehlermeldung kommt vom Betriebssystem - Indy gibt diese nur weiter. Was sagt denn die Ereignisanzeige von Windows wenn der Fehler auftritt? Geht es auf besagtem XP Rechner mit einem anderen FTP Client denn (Fehler eingrenzen!)?

O.g. Meldung kenne ich nur aus dem Zusammenhang mit Trojanern unter XP, im Produktiveinsatz hab ich davon noch nicht gehört... Bitte auch noch mal mit einer sauberen XP SP3 Maschine testen (VM o.ä.).

Gruß,
Assertor
Frederik
  Mit Zitat antworten Zitat