Einzelnen Beitrag anzeigen

Angel4585

Registriert seit: 4. Okt 2005
Ort: i.d.N.v. Freiburg im Breisgau
2.199 Beiträge
 
Delphi 2010 Professional
 
#1

TIdFTP List Befehl unter Vista?

  Alt 10. Aug 2007, 08:07
Hallo,

ich habe das Problem, dass meine TIdFTP Komponente unter Vista ewig auf ein Ergebnis bei der Funktion "List" wartet.
Ich konnte die Zeile lokalisieren wo er ewig wartet.
In der Unit idTCPClient der Indys:
Delphi-Quellcode:
procedure TIdTCPClientCustom.Connect;
begin
  // Do not call Connected here, it will call CheckDisconnect
  EIdAlreadyConnected.IfTrue(Connected, RSAlreadyConnected);
  if IOHandler = nil then begin
    IOHandler := MakeImplicitClientHandler;
    IOHandler.OnStatus := OnStatus;
    ManagedIOHandler := True;
  end;
  try
    // Bypass GetDestination
    if FDestination <> 'then begin
      IOHandler.Destination := FDestination;
    end;

{BGO: not any more, TIdTCPClientCustom has precedence now (for port protocols, and things like that)
    // We retain the settings that are in here (filled in by the user)
    // we only do this when the iohandler has no settings,
    // because the iohandler has precedence
    if (IOHandler.Port = 0) and (IOHandler.Host = '') then begin
      IOHandler.Port := FPort;
      IOHandler.Host := FHost;
    end;
}


    IOHandler.Port := FPort; //BGO: just to make sure
    IOHandler.Host := FHost;
    if IOHandler is TIdIOHandlerSocket then begin
      TIdIOHandlerSocket(IOHandler).IPVersion := FIPVersion;
    end;

    if FConnectTimeout > 0 then begin
      IOHandler.ConnectTimeout := FConnectTimeout;
    end;
    if FReadTimeout > 0 then begin
      IOHandler.ReadTimeout := FReadTimeout;
    end;

    IOHandler.Open;//<---------- Hier hängt er!!
    if IOHandler.Intercept <> nil then begin
      IOHandler.Intercept.Connect(Self);
    end;

    DoStatus(hsConnected, [Host]);
    DoOnConnected;
  except
    IOHandler.Close;
    raise;
  end;
end;
Was ich interessant finde: Ein paar Zeilen obendran wird eine IP-Adresse und ein Port zugewiesen.
Beide habe ich nirgenwo eingetragen, die IP-Adresse ist aus dem lokalen Netzwerk(192.168.115.20) und der Port ist immer unterschiedlich.
Martin Weber
Ich bin ein Rüsselmops
  Mit Zitat antworten Zitat