Anzeige:
Seite 1 von 3 123 LetzteLetzte
Ergebnis 1 bis 15 von 31

Thema: rudimentärer ftp-client

  1. #1
    Registrierter Benutzer Avatar von TheDodger
    Registriert seit
    17.05.2001
    Ort
    Hamburg
    Beiträge
    615

    rudimentärer ftp-client

    Ich brauch irgendwie dringend, und eigentlich schon gestern einen rudimentären FTP-Client, den ich unbedingt im Source benötige und der sowohl unter Windows, als auch unter Linux läuft ...
    Super, neh?
    Meine Versuche, das ganze unter QT hinzubekommen sind eher kläglich gescheitert.

    @anda_skoa
    QT ist dafür denkbar kontraproduktiv, glaub's mir!
    Bodo
    Systemadmistration UNIX

  2. #2
    Registrierter Benutzer
    Registriert seit
    25.01.2003
    Beiträge
    222
    was meinst du denn mit rudimentär ?
    also ich benutze für ftp immer libCurl:
    http://curl.haxx.se/libcurl/
    ist zwar kein fertiger client aber sehr viel mehr muss man
    da auch nicht mehr machen.

    gruss
    Arthur

  3. #3
    Registrierter Benutzer Avatar von TheDodger
    Registriert seit
    17.05.2001
    Ort
    Hamburg
    Beiträge
    615
    Original geschrieben von arthur
    was meinst du denn mit rudimentär ?
    login, cd, get, logout

    Ich habe mir gerade mal die lib angesehen ...
    hmmm ... naja ... über API Design lässt sich streiten ...
    in einem C++ Programm würd ich sie IMHO nicht einsetzen ...
    Geändert von TheDodger (29-04-2003 um 09:23 Uhr)
    Bodo
    Systemadmistration UNIX

  4. #4
    Registrierter Benutzer
    Registriert seit
    25.01.2003
    Beiträge
    222
    also ich weiss nicht was dich da stört, ist halt C.
    dafür ist es eine ausgereifte bibliothek mit so netten sachen wie ssl
    oder connection reusing.
    du kannst aber gerne ihre c++ wrapper benutzten oder selber
    welche schreiben.

    gruss Arthur

    ps.
    ich schreibe c++ programme und nutzte libCurl trozdem

  5. #5
    Registrierter Benutzer Avatar von TheDodger
    Registriert seit
    17.05.2001
    Ort
    Hamburg
    Beiträge
    615
    Original geschrieben von arthur
    also ich weiss nicht was dich da stört, ist halt C.
    Ja, das sieht man

    dafür ist es eine ausgereifte bibliothek mit so netten sachen wie ssl
    oder connection reusing.
    wenn man es braucht ist es schön, ich brauche es eben nicht.
    Eigentlich will ich keine extra lib dazu nhemen ... das bringt schon so genug Probleme, weil es eben OS unabhängig werden soll ...
    du kannst aber gerne ihre c++ wrapper benutzten oder selber
    welche schreiben.
    Einen Wrapper um dem Wrapper?
    ich schreibe c++ programme und nutzte libCurl trozdem
    Ich schreibe auch (nur) C++ Programme, aber das was ich gesehen hab, schreckt mich schon ab!


    [nachtrag]
    Das hier sieht sehr vielversprechend aus :ftplib
    Aber einbinden kann ich das z.Z. witzigerweise nur unter Linux ... der Windows C++ Compiler sträubt sich geradezu hartnäckig ...
    Geändert von TheDodger (29-04-2003 um 13:50 Uhr)
    Bodo
    Systemadmistration UNIX

  6. #6
    Registrierter Benutzer
    Registriert seit
    25.01.2003
    Beiträge
    222
    ich hab mir ftplib angeschaut und irgendwie sieht es für mich genauso
    nach c wie libcurl , nur etwas primitiv, ist aber egal
    wenn du wirklich system unabhängig bleiben willst musst du entwender
    in java oder mit einem interpreter wie zb. perl oder python deine programme
    schreiben.
    ansonsten wirst du dich immer selber drum kümmern müssen dass deine
    sachen sowohl auf der einen wie auch auf der anderen plattform laufen.
    ich bin jedenfalls immer froh wenn dass die bibliothek für mich übernimmt.

    gruss
    Arthur

  7. #7
    Registrierter Benutzer Avatar von TheDodger
    Registriert seit
    17.05.2001
    Ort
    Hamburg
    Beiträge
    615
    Original geschrieben von arthur
    ich hab mir ftplib angeschaut und irgendwie sieht es für mich genauso
    nach c wie libcurl , nur etwas primitiv, ist aber egal
    primitiv?
    sie beschrängt sich auf das notwenidigste und ist nich so aufgeblasen ... das basst scho ...
    Dafür hat sie IMHO eine durchdachtere & besser Dokumentierte API ...
    wenn du wirklich system unabhängig bleiben willst musst du entwender
    in java oder mit einem interpreter wie zb. perl oder python deine programme
    schreiben.
    Hör mir auf mir Java ... und Scriptsprachen sind auch nicht 'profesionell' ... jedenfalls für Kunden.
    Ich muß ja mein bash-script gedöhns alles nach C++ portieren ...
    ansonsten wirst du dich immer selber drum kümmern müssen dass deine
    sachen sowohl auf der einen wie auch auf der anderen plattform laufen.
    ich bin jedenfalls immer froh wenn dass die bibliothek für mich übernimmt.
    Mag auch sein, doch ich will kein lib mitschleifen, von der ich gerade mal 2% benötige ... und dann noch davon abhängig sein ...
    Jedenfalls nicht für minimal Projekte ...
    Bodo
    Systemadmistration UNIX

  8. #8
    Administrator Avatar von anda_skoa
    Registriert seit
    17.11.2001
    Ort
    Graz, Österreich
    Beiträge
    5.477

    Re: rudimentärer ftp-client

    Original geschrieben von TheDodger
    Ich brauch irgendwie dringend, und eigentlich schon gestern einen rudimentären FTP-Client, den ich unbedingt im Source benötige und der sowohl unter Windows, als auch unter Linux läuft ...
    Super, neh?
    Meine Versuche, das ganze unter QT hinzubekommen sind eher kläglich gescheitert.

    @anda_skoa
    QT ist dafür denkbar kontraproduktiv, glaub's mir! :)
    Ich war so frei es nicht zu glauben :)
    Hab mal folgendes versucht, klappt bei mir

    Code:
    #include <qapplication.h>
    #include <qurloperator.h>
    #include <qnetwork.h>
    
    int main(int argc, char** args)
    {
        QApplication app(argc, args, false);
    
        qInitNetworkProtocols(); // init FTP und HTTP UrlOperators
    
        QUrlOperator* op = new QUrlOperator();
        QObject::connect(op, SIGNAL(finished(QNetworkOperation*)),
                         &app, SLOT(quit()));
    
        op->copy(QString("ftp://user:password@server/pfad/file.ext"),
                 QString("file:/zielpfad"));
    
        return app.exec();
    }
    Ciao,
    _
    Qt/KDE Entwickler
    Debian Benutzer

  9. #9
    Registrierter Benutzer
    Registriert seit
    25.01.2003
    Beiträge
    222
    Dafür hat sie IMHO eine durchdachtere & besser Dokumentierte API ...
    sagen wir mal lieber es ist protokol unabhängig und damit nicht soo FTP spezifisch
    wie du es vielleicht gerne hättest.
    ich weiss zwar nicht was für kunden das sind, sorry aber wenn jemand nur auf c++
    besteht weil es "professionel" ist der scheint mir selber nicht wirklich professionel
    zu sein.
    der hauptgrund für die wahl von c++ ist doch meistens die geschwindigkeit, dadurch aber verlängert sich auch die entwicklung im vergleich zu java oder python.

    gruss
    Arthur

  10. #10
    Registrierter Benutzer Avatar von TheDodger
    Registriert seit
    17.05.2001
    Ort
    Hamburg
    Beiträge
    615

    Re: Re: rudimentärer ftp-client

    Original geschrieben von anda_skoa
    Ich war so frei es nicht zu glauben
    Hab mal folgendes versucht, klappt bei mir
    [...]

    Und was passiert, wenn du den Kram in eine extra Klasse packst?
    Bodo
    Systemadmistration UNIX

  11. #11
    Registrierter Benutzer Avatar von TheDodger
    Registriert seit
    17.05.2001
    Ort
    Hamburg
    Beiträge
    615
    Original geschrieben von arthur
    sagen wir mal lieber es ist protokol unabhängig und damit nicht soo FTP spezifisch wie du es vielleicht gerne hättest.
    Das wird es sein. :-)
    ich weiss zwar nicht was für kunden das sind, sorry aber wenn jemand nur auf c++ besteht weil es "professionel" ist der scheint mir selber nicht wirklich professionel zu sein.
    Wenn Kunden absoluten Zugriff auf Server haben (Mausschubser OS halt) und ein Perl / Bash / <was-auch-immer-script-basierendes> Script sehen ...
    der hauptgrund für die wahl von c++ ist doch meistens die geschwindigkeit,
    auch und die Möglichkeit, Manipulationen von DAU's zu verhindern.
    dadurch aber verlängert sich auch die entwicklung im vergleich zu java oder python.
    Nun, bei mir weniger ... ich müsste mich jetzt erst Phyton auseinandersetzen und Java ist nicht so der bringer ... jedenfalls nicht für mich. Nenn es Voruteil.

    Ich hab für C++ einiges an Klassen, was ich ohne Problem weiter benutzen kann und das fördert meine Entwicklungsgeschwindigkeit enorm.

    In diesem Sinne ist alles Ansichtssache ...
    Bodo
    Systemadmistration UNIX

  12. #12
    Administrator Avatar von anda_skoa
    Registriert seit
    17.11.2001
    Ort
    Graz, Österreich
    Beiträge
    5.477

    Re: Re: Re: rudimentärer ftp-client

    Original geschrieben von TheDodger
    [...]

    Und was passiert, wenn du den Kram in eine extra Klasse packst?
    Bitte sehr, bitte gleich

    Code:
    #include <qapplication.h>
    #include <qurloperator.h>
    #include <qnetwork.h>
    
    class MyFTP : public QObject
    {
        Q_OBJECT
    
    public:
        MyFTP(QObject* parent = 0, const char* name=0) : QObject(parent, name), m_op(0) {
              qInitNetworkProtocols();
        }
    
        ~MyFTP() {};
    
        void download(const QString& url, const QString& to)
        {
            if (m_op == 0)
            {
                m_op = new QUrlOperator();
                QObject::connect(m_op, SIGNAL(finished(QNetworkOperation*)),
                                 this, SIGNAL(finished()));
    
            }
    
            m_op->copy(url, to);
        }
    
    signals:
        void finished();
    
    private:
        QUrlOperator* m_op;
    };
    
    int main(int argc, char** args)
    {
        QApplication app(argc, args, false);
    
        MyFTP ftp;
        QObject::connect(&ftp, SIGNAL(finished()),
                         &app, SLOT(quit()));
    
        ftp.download(QString("ftp://user:password@server/pfad/datei"),
                     QString("file:/zielpfad"));
    
        return app.exec();
    }
    
    #include "myftp.moc.cpp"
    moc File mit
    #> moc -o myftp.moc.cpp myftp.cpp
    generieren

    Ciao,
    _
    Qt/KDE Entwickler
    Debian Benutzer

  13. #13
    Registrierter Benutzer Avatar von TheDodger
    Registriert seit
    17.05.2001
    Ort
    Hamburg
    Beiträge
    615

    Re: Re: Re: Re: rudimentärer ftp-client

    Original geschrieben von anda_skoa
    Bitte sehr, bitte gleich

    hmmmm ...

    schnell ...

    Ich hab das ganze mal grad ausprobiert ... nach den logfiles des FTP-Servers klappt der Download ... nur die Datei taucht ned auf meiner Festplatte auf!
    Ich schau mal, ob sich das ganze in mein Projekt integrieren kann ... da passiert schließlich noch mehr, ausser dem Download von Dateien ...


    moc File mit
    #> moc -o myftp.moc.cpp myftp.cpp
    generieren
    Das überlass ich generell qmake
    Bodo
    Systemadmistration UNIX

  14. #14
    Administrator Avatar von anda_skoa
    Registriert seit
    17.11.2001
    Ort
    Graz, Österreich
    Beiträge
    5.477

    Re: Re: Re: Re: Re: rudimentärer ftp-client

    Original geschrieben von TheDodger
    Ich hab das ganze mal grad ausprobiert ... nach den logfiles des FTP-Servers klappt der Download ... nur die Datei taucht ned auf meiner Festplatte auf!
    Ich schau mal, ob sich das ganze in mein Projekt integrieren kann ... da passiert schließlich noch mehr, ausser dem Download von Dateien ...
    Vielleicht ist der zweite String kein Verzeichnis. Ich habs mal mit einer Zieldatei probiert, da gings komischerweise nicht.


    Das überlass ich generell qmake
    Ja, ich auch
    War mehr als Hinweis für andere, die das Posting eventuell lesen.

    Ciao,
    _
    Qt/KDE Entwickler
    Debian Benutzer

  15. #15
    Registrierter Benutzer Avatar von TheDodger
    Registriert seit
    17.05.2001
    Ort
    Hamburg
    Beiträge
    615

    Re: Re: Re: Re: Re: Re: rudimentärer ftp-client

    Original geschrieben von anda_skoa
    Vielleicht ist der zweite String kein Verzeichnis. Ich habs mal mit einer Zieldatei probiert, da gings komischerweise nicht.
    nein, daran lag es nicht ... jedenfalls nicht unter windows ... unter linux muß ich das gleich mal testen ...
    unter win hab ich ein /tmp verzeichniss und da taucht nix auf ...

    Dafür funktioniert es unter Linux ...
    Ich leg mi nieda ...


    Ja, ich auch
    War mehr als Hinweis für andere, die das Posting eventuell lesen.
    Geändert von TheDodger (30-04-2003 um 15:27 Uhr)
    Bodo
    Systemadmistration UNIX

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •