RECHERCHER :
COMMUNAUTE MP
Identifiez vous ...
Devenir Membre
J'ai oublié mon MDP
DOMAINE MP
Bavardages
Langages Généraux
Langages Web
Langages DotNet
Autres langages
Dev. Jeux Video
Sécurité
Sys. Exploitation
Graphismes
Logiciels
Réseaux
Bases de données
Méthodologies
Emplois High-tech
Aide juridique
Articles juridiques
FORUM
Index des forums
Ajouter un sujet
Rechercher sujet
Contact Responsable
Devenir modérateur
CHAT MP IRC
Votre pseudo ...
Serv: irc.irc-land.org
Chan: #MoteurProg
PARTICIPER
Plus de 3500 emplois.
Rechercher un job
Déposez votre CV
Emplois High-tech

Visiteur MP

 application ftp

Forum : LIBRAIRIE C++ - GTK
Sous Catégorie : GTK
Type du sujet : Sujet Normale
FAQ : FAQ LIBRAIRIE C++ - GTK

SUIVI DES SUJETS PAR MAIL

SUIVI PAR MAIL INACTIF

RESOLUTION DU SUJET SUJET NON RESOLU
BLOQUAGE DU SUJET SUJET ACTIF
APPARTENANCE A LA FAQ N'APPARTIENT PAS A LA FAQ


PAGES : [1] [2]

POSTER UN NOUVEAU SUJET REPONDRE A CE SUJET

FORUM LIBRAIRIE C++ - GTK

PREMIERE PAGE

PAGE PRECEDENTE

Page précedente

Page suivante

PAGE SUIVANTE

DERNIERE PAGE
mox
Nouveau membre
Inscrit : 28/01/2005
Messages : 8
Message
#49635
Posté le 28/01/05 à 13:12
Bonjour, tout d'abord je me souhaite la bienvenue en tant que nouveau sur ce forum. Smiley

Voila mon probleme : je suis en train de creer une application ftp qui permet donc de downloader des fichiers d'un serveur ftp. J'utilise Qt pour cela.

Pour cela, j'utilise des ' QUrlOperator ' afin d'effectuer les telechargements (fonction copy). Cette fonction est censé effectuer un get et un put a la suite.

Mon but est de faire la copie de tous les fichiers d'un repertoire. Je procede de la maniere suivante : a chaque copie d'un fichier effectuée, je lance la copie du fichier suivant.

Tout se passe bien pour des repertoires de peu de fichiers. Mais lorsque celui ci depasse environ les 30 fichiers, au bout d'un certain nombre de copie (variant entre 27 et 30+) je ne recois plus de SIGNAL comme quoi la copie a ete effectuee ou non.

Cela est du au fait que mon serveur ftp sur lequel j'effectue mes tests, ne peut prendre qu'un nombre limité d'opérations : ce nombre est fixé par défaut à 30 (pour limiter les risques d'attaques). Si j'augmente cette limite à 100, je n'ai plus de problème pour mes tests. Mais si mon repertoire possede plus de 100 fichiers, je risque de rencontrer a nouveau le probleme.

De plus, si j'effectue une pause entre mes copies, le probleme disparait egalement.

Neanmoins, ces deux solutions ne sont pas tres elegantes. je ne comprend pas pourquoi je ne recois pas de signal comme quoi la copie ne peut etre effectuee. Les operations put et get ne sont elles pas censees emettre un signal "finished" quoi qu'il arrive ?

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

Publicité
Inscrit : X
Messages : X
Message
#Aucun

HAUT DE PAGE

  

pac
Co-Administrateur
Superviseur :
- Méthodologie.
Modérateur :
- Delphi
Chef de projet(s) :
- Jeu Awalé
- EcoSystem
- MySudoku

Avatar de pac
Inscrit : 08/04/2004
Messages : 6571
Message
#49660
Posté le 28/01/05 à 17:54
Avec ce que tu dis, le problème ne vient pas de ton programme mais du serveur ftp.

Il faudrait dans ce cas peut-être que tu modifies ton programme pour ne pas demander trop de get et de put au serveur ftp en même temps.
__________________________
Lisez la charte, pensez à regarder la FAQ, les tutoriaux, l'annuaire et faites une recherche dans les forums.
N'oubliez pas le Tag [Résolu]Image.

Initiez-vous à Delphi avec Turbo Delphi Explorer, au C ou au C++ avec Code::Blocks et C# avec Visual C# 2005 Express.

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE ALLER VOIR SON SITE

mox
Nouveau membre
Inscrit : 28/01/2005
Messages : 8
Message
#49663
Posté le 28/01/05 à 17:58
En fait j'aimerais programmer tres proprement. Et pour moi, faire un pause(temps) pour pas demander trop de get et put, c'est pas tres propre : et puis comment regler ce temps ?

Ca me parait beaucoup plus logique que le serveur ftp refuse le get, et que j'en sois averti par un SIGNAL fail.

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

Alp
Superviseur :
- Système d'ex.
- Méthodologie.
- C & C++
Modérateur :
- Bavardages
Chef de projet(s) :
- My SDL Lib

Avatar de Alp
Inscrit : 24/06/2004
Messages : 2547
Message
#49664
Posté le 28/01/05 à 18:02
Ben une façon de voir les choses :
tu effectue surement une boucle pour récup tous tes programmes une fois le téléchargement lancé...
A chaque lancement de téléchargement de programme, tu augmentes une variable nb_dl par exemple...
Et dans ta boucle pour récup, tu dis que si nb_dl>30 alors:
- Tu affiche une messagebox qui dit : On ne peut effectuer plus de 30 téléchargements.
- Tu décrémente nb_dl car le dernier téléchargement a été annulé puisqu'il y en a déjà 30.
Qu'en pensez-vous?
Alp
__________________________
Be C++
Mon Blog (C++, Intelligence Artificielle, Prolog)

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

mox
Nouveau membre
Inscrit : 28/01/2005
Messages : 8
Message
#49665
Posté le 28/01/05 à 18:06
Oui, mais...

Ce 30 dépend des ftp, certains ftp peuvent tres bien demander que 5 operations à la suite, ou 200... je ne peux pas recuperer cette variable.
Et puis, quand j'utilise konqueror pour telecharger un repertoire de mon ftp, il telecharge la totalité des repertoires et pas que 30...

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

Alp
Superviseur :
- Système d'ex.
- Méthodologie.
- C & C++
Modérateur :
- Bavardages
Chef de projet(s) :
- My SDL Lib

Avatar de Alp
Inscrit : 24/06/2004
Messages : 2547
Message
#49666
Posté le 28/01/05 à 18:09
Si justement, je crois que tu peux récup cette variable...
Sinon, certains serveurs acceptent jusqu'à 100 dl simultanés...
__________________________
Be C++
Mon Blog (C++, Intelligence Artificielle, Prolog)

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

mox
Nouveau membre
Inscrit : 28/01/2005
Messages : 8
Message
#49667
Posté le 28/01/05 à 18:33
Nan mais je crois pas qu'il faut chercher de ce cote la. Car je viens de faire un test : si on est plusieurs a downloader sur le ftp, mon processus de copie s'arrete encore plus vite.
Alors meme si j'ai la varibale, ca me sert a rien : car je n'aurai pas de garantie sure.

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

Alp
Superviseur :
- Système d'ex.
- Méthodologie.
- C & C++
Modérateur :
- Bavardages
Chef de projet(s) :
- My SDL Lib

Avatar de Alp
Inscrit : 24/06/2004
Messages : 2547
Message
#49669
Posté le 28/01/05 à 18:50
Ah oui je n'y avais pas pensé... De plus pas possible de récup le nombre de connecté pour faire en fonction...
Hum... Je pense que tu devrais écrire à ceux qui ont fait FileZilla, pour leur demander un tuyau, non?
Sinon ben...
tu peux pas faire un truc :

ta fonction download () { tant que pas d'erreurs renvoyée par le ftp { tant que pas le fichier entier récupéré { récupérer un bout de fichier } afficher : Téléchargement du fichier terminé. } }

Enfin un truc qui ressemblerait à ça ne serait pas possible?
Alp
__________________________
Be C++
Mon Blog (C++, Intelligence Artificielle, Prolog)

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

mox
Nouveau membre
Inscrit : 28/01/2005
Messages : 8
Message
#49670
Posté le 28/01/05 à 18:58
En fait je sais pas si tu connais Qt, mais ca utilise un systeme de SIGNAl. En théorie, quand la copie pose un probleme, je recois un signal qui me dit que ca s'est mal passé.

Et quand je demande l'etat du fichier qui passe pas, il me dit qu'il est dans l'etat StWaiting, donc qu'il attend... et il attend... sans jamais se débloquer.

Pour info, ca utilise pas vraiment ce que tu me decris la car ton truc 'bloquerait' le prog principal puisque tant que le fichier n'a pas ete telechargé, ton prog resterait dans sa boucle.

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 

Alp
Superviseur :
- Système d'ex.
- Méthodologie.
- C & C++
Modérateur :
- Bavardages
Chef de projet(s) :
- My SDL Lib

Avatar de Alp
Inscrit : 24/06/2004
Messages : 2547
Message
#49671
Posté le 28/01/05 à 19:00
Ben avec des threads, ca bloquerait pas, non?
Sinon ben :
tant que pas de signal d'erreur {
...
}
non?
__________________________
Be C++
Mon Blog (C++, Intelligence Artificielle, Prolog)

HAUT DE PAGE

PROFIL MEMBRE LUI ECRIRE 
POSTER UN NOUVEAU SUJET REPONDRE A CE SUJET

PREMIERE PAGE

PAGE PRECEDENTE Page précédente

Page suivante

PAGE SUIVANTE DERNIERE PAGE

FORUM LIBRAIRIE C++ - GTK



    PAGES : [1] [2]



.: Site Web développé par Julien Pichot et l'équipe MPWG avec www.evolvia-web.com :.