begin process at 2012 05 30 11:04:05
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Windows

 > 

Réseau & Internet

 > 

[Qt] Obtenir une arborecense d'un serveur ftp


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

[Qt] Obtenir une arborecense d'un serveur ftp

jeudi 11 juin 2009 à 12:56:23 | [Qt] Obtenir une arborecense d'un serveur ftp

jyz93

Bonjour a tous,

Voila Je suis en train de programmé un client ftp et j'ai besoin d'obtenir l'arborescence du serveur sur lequel je suis connecté afin de pouvoir modifié mon site ect...
Je travail en C++ avec Qt. J'ai vu la méthode QFtp::list(); le problème c'est que je ne vois pas comment l'utilisé etant donné qu'elle retourne un int :s
J'aimerais par la suite placé mon arborecense dans une architecture mvc avec une vue de type QTreeView.

Merci d'avance pour votre aide,
mardi 16 juin 2009 à 16:34:27 | Re : [Qt] Obtenir une arborecense d'un serveur ftp

SebLinck

int QFtp::list ( const QString & dir = QString() )

Lists the contents of directory dir on the FTP server. If dir is empty, it lists the contents of the current directory.

The listInfo() signal is emitted for each directory entry found.

The function does not block and returns immediately. The command is scheduled, and its execution is performed asynchronously. The function returns a unique identifier which is passed by commandStarted() and commandFinished().

When the command is started the commandStarted() signal is emitted. When it is finished the commandFinished() signal is emitted.

See also listInfo(), commandStarted(), and commandFinished().



Cordialement,
Sébastien.
jeudi 18 juin 2009 à 00:16:27 | Re : [Qt] Obtenir une arborecense d'un serveur ftp

jyz93

Donc voici mon code (reduite) :
fileList = new QTreeWidget;  //Je fais mon QTreeWidget
fileList->setEnabled(false);
fileList->setRootIsDecorated(false);
fileList->setHeaderLabels(QStringList() << tr("Name") << tr("Size") << tr("Owner") << tr("Group") << tr("Time"));
fileList->header()->setStretchLastSection(false);

QWidget *widget = new QWidget;
QGridLayout layout_1 = new QGridLayout;
layout_1->addWidget(fileList, 3, 0);      //Je place mon QTreeWidget dans ma fenêtre via un layout
widget->setLayout(layout_1);

connect(ftp, SIGNAL(commandFinished(int, bool)), this, SLOT(commandefini(int, bool)));
connect(ftp, SIGNAL(listInfo(QUrlInfo)), this, SLOT(arbo(QUrlInfo)));  //connexion des signaux avec les slots...
connect(connexion,SIGNAL(clicked()),qApp,SLOT(connect1()));

void fenetre::connect1()
{

ftp->connectToHost(ftptext->text(), portnum->value());
ftp->login(utilisateurtext->text(), mdptext->text());

}

void fenetre::commandefini(int i, bool i2)
{

        if (ftp->currentCommand() == 3)  //Une fois que connectToHost se termine, je lance ftp->list();
        {
            if (i2)
            {
                ftp->close();
            }
            else
            {
            int id = ftp->list();
            qDebug()<< id << ftp->state();
            }
        }

        if (ftp->currentCommand() == 4)
        {
        }
}

void fenetre::arbo(const QUrlInfo &arbo1)
{
    qDebug()<<"arbo : "<< arbo1.name();

     QTreeWidgetItem *item = new QTreeWidgetItem;
     item->setText(0, arbo1.name());
     item->setText(1, QString::number(arbo1.size()));
     item->setText(2, arbo1.owner());
     item->setText(3, arbo1.group());
     item->setText(4, arbo1.lastModified().toString("MMM dd yyyy"));

     isDirectory[arbo1.name()] = arbo1.isDir();
     fileList->addTopLevelItem(item);
     if (!fileList->currentItem())
     {
         fileList->setCurrentItem(fileList->topLevelItem(0));
         fileList->setEnabled(true);
     }

}

Mais j'obtient ceci apres comme valeur a la ligne : qDebug()<< id << ftp->state();

Starting C:/jéjé/jeje/projet/Net Developpe/release/Net Developpe.exe...
3 3 

id vaut 3 or il devrait valoir 6, valeur de ftp->list(); et non 3 la valeur de  ftp->connectToHost();
Cela a donc pour effet de ne pas lancé mon slot arbo...



Cette discussion est classée dans : ftp, serveur, qt, obtenir, arborecense


Répondre à ce message

Sujets en rapport avec ce message

FTP [ par David ] Recherche source pour realiser une connection FTP sur mon serveur pour effectuer le transfert de fichier dans les deux sens Local-->Serveur Serveur--> Serveur http/ftp [ par fytlos ] Salut a tous,Je recherche les sources d'un serveur ftp/http programmé avec WinInet sous Visual c++Merci++ transfert FTP [ par Darkukai ] bonjour à tousje dois dévelloper un petit exe qui s'identifie et envoie un fichier sur un serveur ftp avec des paramètres rentrer par l'utilisateur (u Problème d'envoie par socket [ par CyberP ] J'ai fait un programme qui se connecte à un serveur ftp (le serveur ftp est aussi sur mon ordi). Je me connecte avec la fonction connect() et je recoi client/serveur FTP [ par fab ] Salut!!!Je développe un prog client/serveur FTP en C++ Builder . Je veux pouvoir envoyer un fichier image au serveur . Pour cela j'utilise le composan Obtenir l'heure d'un serveur [ par pcollinet ] Salut à tous, je recherche désespéremment un moyen de faire l'équivalent de NetRemoteTOD pour que celà fonctionne avec Win98 et Win NT ou 2000. En fai Obtenir le hostname du client [ par Poppuledaimadoshi ] Bonjour, je commence dans la programmation réseau, et j'ai un petit problème. En effet, j'ai commencé un petit programme en C plus plus qui fait serve Réalisation d'un serveur FTP [ par Ihsanovic ] Salut tt le monde,Je suis un étudiant en informatique, j'ai un tt ptit pblme, je dois réaliser un SERVEUR FTP qui gére les sessions des clients, le tr FTP Serveur : Taux de tranfert d'1 fichier [ par bergou ] Avec MFC : FTP serveurquelle est l'instruction qui me permet de connaitre le taux de transfert d'un fichier par rapport au modem ?MerciBergou


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,156 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales