AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi Socket-Fehler bei IndyFTP
Thema durchsuchen
Ansicht
Themen-Optionen

Socket-Fehler bei IndyFTP

Ein Thema von Ingolf · begonnen am 24. Apr 2006 · letzter Beitrag vom 29. Apr 2006
Antwort Antwort
Ingolf

Registriert seit: 21. Jan 2006
22 Beiträge
 
#1

Socket-Fehler bei IndyFTP

  Alt 24. Apr 2006, 17:25
Habe ein kleines Testprogramm geschrieben mit IndyFTP. Besteht nur aus Edit-Objekten für die Anmeldedaten und dem Connect-Button. Sobald ich die Verbindung herstellen will, erscheint der Fehler
http://www.ruegen-board.de/socketfehler.jpg
Ich habe schon die Indy-Demos durchgeforstet, finde aber nichts.
Wie kommt dieser Fehler zu stande? Eine wsocket32.dll ist auf dem PC vorhanden.
Gruß Ingolf
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#2

Re: Socket-Fehler bei IndyFTP

  Alt 24. Apr 2006, 20:44
Hallo Ingolf,

für eine vollständige Fehlerbeschreibung musst du auch schreiben, welche Indy / Delphi Version du verwendet hast, ob du die Client oder Server Komponente einsetzt und welche Eigenschaftswerte du bei der Komponente abweichend vom Standard gesetzt hast.

Grüße vom marabu
  Mit Zitat antworten Zitat
Ingolf

Registriert seit: 21. Jan 2006
22 Beiträge
 
#3

Re: Socket-Fehler bei IndyFTP

  Alt 24. Apr 2006, 21:26
Es ist nur ein kleines Programm. Ich habe mal den Code mit abgebildet. Ich arbeite mit Delphi6.
Die mit Label (1..3) bezeichneten Elemente sind nur Beschriftungen.
Beim TIdFTP-Objekt ist nur "passiv" auf "true" umgestellt. Der Rest ist Standard und wird vom Programm geändert. Sobald der Compiler in die den Befehl "connect" ausführen soll, kommt die Fehlermeldung.

Gruß Ingolf

Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Psock, IdBaseComponent, IdComponent, extctrls, comctrls,
  IdTCPConnection, IdTCPClient, IdFTP, IdAntiFreezeBase, IdAntiFreeze;

type
  TForm1 = class(TForm)
    idED: TEdit; //User-Eingabe
    Label1: TLabel; //Beschriftung
    Label2: TLabel; //Beschriftung
    pwED: TEdit; //Passwort-Eingabe
    Label3: TLabel; //Beschriftung
    hostED: TEdit; //Host-Eingabe
    meldung: TLabel;
    verbindenBtn: TButton;
    trennenBtn: TButton;
    ftp: TIdFTP;
    IdAntiFreeze1: TIdAntiFreeze;
    procedure verbindenBtnClick(Sender: TObject);
    procedure trennenBtnClick(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.verbindenBtnClick(Sender: TObject);
begin
       with FTP do try
                User := idED.Text;
                Password := pwED.Text;
                Host := hostED.Text;
                Connect;

                if Connected then begin
                        verbindenBtn.Enabled:=false;
                        trennenBtn.Enabled:=true;
                        meldung.Caption:='Verbunden';
                        
                end;
            finally
                verbindenBtn.Enabled:=true;
                trennenBtn.Enabled:=false;
                meldung.Caption:='Konnte nicht verbinden';
       end;

end;

procedure TForm1.trennenBtnClick(Sender: TObject);
begin
        FTP.Disconnect;
        meldung.Caption:='Verbindung getrennt';
        verbindenBtn.Enabled := true;
        trennenBtn.Enabled := false;
end;

end.
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#4

Re: Socket-Fehler bei IndyFTP

  Alt 25. Apr 2006, 08:51
Funktioniert prima bei mir - nachdem ich finally gegen except getauscht habe. Die Exception wird nicht geworfen.

marabu
  Mit Zitat antworten Zitat
Ingolf

Registriert seit: 21. Jan 2006
22 Beiträge
 
#5

Re: Socket-Fehler bei IndyFTP

  Alt 25. Apr 2006, 13:19
Also bei mir kommt der Fehler trotzdem. Ich habe das Indy-Demo FTPDemo.dpr getestet und das läuft.
Allerdings hab ich mir inzwischen den Quelltext des Demos zerkloppt. Bekommt man das irgendwoher?

Gruß Ingolf
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#6

Re: Socket-Fehler bei IndyFTP

  Alt 25. Apr 2006, 18:57
Vielleicht findest du was du brauchst auf der offziellen Indy Project Demo Seite: klick

marabu
  Mit Zitat antworten Zitat
Ingolf

Registriert seit: 21. Jan 2006
22 Beiträge
 
#7

Re: Socket-Fehler bei IndyFTP

  Alt 25. Apr 2006, 20:59
Habe Indy 10.1.5 installiert und erhalte jetzt beim compilieren des Projekts folgenden Fehler:

[Fataler Fehler] ftp2testunit.pas(8): Unit IdCommandHandlers wurde mit einer unterschiedlichen Version von IdComponent.TIdComponent compiliert

Hast Du eine Ahnung, wodurch dieser Fehler kommt? Laut Indy sind Service-Pack2 und RTL3 Vorrausetzung. Beides ist drauf.

Gruß Ingolf
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#8

Re: Socket-Fehler bei IndyFTP

  Alt 25. Apr 2006, 21:03
Die beiden units wurden gegen verschiedene Versionen von Indy gelinkt. Erstell(Kompiliere) mal alles neu.
Markus Kinzler
  Mit Zitat antworten Zitat
Ingolf

Registriert seit: 21. Jan 2006
22 Beiträge
 
#9

Re: Socket-Fehler bei IndyFTP

  Alt 29. Apr 2006, 19:57
Sag mir mal, wie das geht. Ich bilde mir ein, alles kompiliert zu haben, aber es ändert sich nichts.

Gruß Ingolf
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:53 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz