FTP-Client Tool



  • Erstmal ein Hallo an alle! Ich bin neu hier im Board und sehr lernwillig.
    Die kommenden Wochen habe ich ein wenig mehr Zeit als sonst und würde gerne meine Idee nun endlich verwirklichen. Leider (?) brauche ich "ein wenig" Hilfe.
    Bitte peinigt mich nicht gleich als Newbe! Ich lese nebenbei so gut wie alles, was ich zum Thema finden kann.
    Ich würde mein Programm gerne mit dem Borland C++ Builder 6 realisieren, da mir das objektorientiere sehr zusagt. Allerdings bin ich noch nicht so geübt im Umgang mit dieser Art des Programmierens. Ich fange am besten mal an, in dem ich euch mitteile, was ich mir so vorstelle.

    Ablauf:
    Der Benutzer startet das Programm und drückt einen Button. Nun wird eine Verbindung zu einem FTP-Server aufgebaut. Das Programm ließt nun einen Registry-Wert aus; als Ergebnis bekommt er Werte wie z.B. 1.3 oder 2.0 (usw.) zurück. Nun schaut sich dar Client die Ordnerstruktur des FTP-Verzeichnisses an und vergleicht die Ordnernamen mit dem Wert aus der Registry. Sollte es einen Ordner geben, der (vom Zahlenwert her) größer als der Wert in der Registry ist, wechselt der Client in dieses Verzeichnis.

    In dem Verzeichnis befinden sich dann Dateien. Diese haben die Dateiendungen .hak, .zdd und .bmu. Der Client soll sich nun die erste Datei schnappen, schauen, welche Dateieindung sie hat und sie in ein Verzeichnis (ebenfalls per Registry eingelesen) laden. Nachdem alle Dateien vom FTP geladen wurden, soll der (Zahlenwert) in der Registry auf den Wert des Ordnernamens geändert werden.

    Ich habe mich mal ein wenig mit der NMFTP-Komponente auseinandergesetzt und auch schon eine Verbindung aufbauen können. Verzeichnisse auslesen und in ein Verzeichnis wechseln ist auch kein Problem, jedoch nicht automatisiert.

    Übernehme ich mich mit diesem Vorhaben, oder ist das zu schaffen? Kann mir da jemand vielleicht konkrete Hinweise geben oder mir gar ein bisschen unter die Arme greifen?

    Gruß



  • Hallo,

    das mit Registry lesen/schreiben löst du am besten mit TRegistry aus Borland VCL. Für FTP sachen empfehle ich dir die Indy Komponenten aber nicht die bei BCB 6 dabei sind nimm die Version 9 die Version 10 ist noch nicht stabil.

    Die Automatisierung würde ich über nen 2. Thread lösen.

    Download Indy 9:
    http://www.indyproject.org/download/Files/Indy9.iwp

    hier ne kleine Install.-Hilfe

    - deinstall standard indy8 of BCB with Installer

    - call fullc6.bat for BCB6 ect.

    - copy the created folder CBx (x for Version) to <installroot>\Programme\Borland\CBuilder6\Source\Indey9

    - In your C++Builder IDE, add the Indy design-time package with
    Component|Install Package...|Add...
    Add the Design-Time .BPL that is listed.
    It usually is named dclIndy followed by the Borland C++ Builder version and an 0.

    - Copy all *.hpp and *.h from folder Indy9 to <installroot>\Programme\Borland\CBuilder6\Include\Vcl

    - Copy the HelpFiles to <installroot>\Programme\Borland\CBuilder6\Help

    Notice:

    For use Indy
    - Add IdWinSock2HPP in project condition for disable error Multiple declaration,
    in winsock.h winsock2.h and winsock.hpp
    - Add EIdSilentException to the list of exceptions to ignore for disable
    EIdConnClosedGracefully exception



  • Hallo,

    danke für den Tipp mit Indy. Ich habe es, wie in der Installationshilfe beschrieben einbinden können. Jetzt bin ich noch überfordertet als vorher 😉
    Werde mir mal die Dokumentation runterladen und schauen, ob ich daraus etwas schlauer werde.



  • überfordertet ?????



  • Sagen wir lieber überhäuft 😉

    Ich probiere jetzt mit der FTP Client Komponente ein wenig rum. Hast Du konkrete Erfahrung damit?

    Edit: Ich habe eben mal versucht, durch Klick auf einen Button die Funktion Connect(1,180) aufzurufen und bekam eine Fehlermeldung.

    Indy Error.jpg

    Was mache ich da jetzt??



  • Bitte konkrete Fragen zu spezifischen Problemen jeweils in einem eigenen Thread stellen. Dann fällt es auch leichter, eine aussagekräftige Überschrift zu formulieren.
    Faustregel: ein Thema pro Thread, ein Thread pro Thema.
    Natürlich nicht, ohne vorher ausführlich von FAQ und Suchfunktion Gebrauch gemacht zu haben. Danke!



  • Liegt an deiner Project Einstellung,

    Laufzeitpackete ausschalten und dyn. RTL ausschalten.

    Indy 9 läuft sehr gut, benutzen Indy mittlerweile für viele Highperfomace-Anwendungen.

    Einfach mal eins der Beispiele ansehen.

    Luusah schrieb:

    Sagen wir lieber überhäuft 😉

    Ich probiere jetzt mit der FTP Client Komponente ein wenig rum. Hast Du konkrete Erfahrung damit?

    Edit: Ich habe eben mal versucht, durch Klick auf einen Button die Funktion Connect(1,180) aufzurufen und bekam eine Fehlermeldung.

    Indy Error.jpg

    Was mache ich da jetzt??


Anmelden zum Antworten