OCX - CLIENT FTP . AJOUTER DU FTP DANS VOS APPLI

thierrydelepine Messages postés 521 Date d'inscription mardi 24 décembre 2002 Statut Membre Dernière intervention 11 septembre 2008 - 26 nov. 2004 à 13:56
cs_chouikh Messages postés 8 Date d'inscription mercredi 11 juin 2003 Statut Membre Dernière intervention 26 mars 2009 - 26 mars 2009 à 12:48
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/27835-ocx-client-ftp-ajouter-du-ftp-dans-vos-appli

cs_chouikh Messages postés 8 Date d'inscription mercredi 11 juin 2003 Statut Membre Dernière intervention 26 mars 2009
26 mars 2009 à 12:48
voila pour mon serveur

Informations générales sur le serveur:
Système d'exploitation Linux
Version du kernel 2.6.29
Machine Type i686
Version Apache 2.2.11 (Unix)
Version PERL 5.8.8
Version PHP 5.2.8
Version MySQL 5.0.67-community
Construction de cPanel 11.24.4-RELEASE 34599
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
26 mars 2009 à 07:59
Merci.

ce contrôle date, il est pas forcément beau, etc.

je le ferai aujourd'hui, je m'y prendrai un peu differemment, assurément.

Faudrait que je m'installe un serveur FTP, pour bien le mettre au point.

quel serveur utilisez vous ? (plus la gamme sera importante, plus fins seront les tests)
cs_chouikh Messages postés 8 Date d'inscription mercredi 11 juin 2003 Statut Membre Dernière intervention 26 mars 2009
26 mars 2009 à 02:08
je commente un peu en retard, ça fait plus qu'une année maintenant que j'utilise cet OCX.

rien a dire, Super Cool comme travail, je le note 10/10

pour ceux qui ont un problème de pourcentage, je pense que le problème vient de la déclaration Buffer_size (Procédure Upload), le buffer_size est réglé à 1024000, je ne sais pas si c'est en octet ou pas, ce que j'ai remarqué c'est qu'a chaque upload, le pourcentage affiche 100.

Alors j'ai essayé avec des fichiers volumineux, et j'ai remarqué que le pourcentage change relativement.

j'ai mis alors le buffer_size à 10240 et ma barre de progression fonctionnait correctement.

je pense que ce OCX est trés demandé, je propose alors à ceux qui peuvent être intéressé de le développer en open source, après l'accord bien sur de RENFIELD.
cs_drakkard Messages postés 99 Date d'inscription lundi 20 juin 2005 Statut Membre Dernière intervention 20 janvier 2009
8 avril 2008 à 09:28
Merci à toi,

HO GRAND RENFIELD ;-)

Dans l'attente de voir ton code de ouf comme d'hab...
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
7 avril 2008 à 19:23
faut que je repasses dessus competement, la source est hors d'age et mal concue, surement a l'epoque
cs_drakkard Messages postés 99 Date d'inscription lundi 20 juin 2005 Statut Membre Dernière intervention 20 janvier 2009
7 avril 2008 à 18:29
Arghhh....

lorsque je tente de faire reyftp.files.count
j'ai un message d'erreur sur le serveur FTP 425 can't open data connection
si je fais reyftp.sendcommand("LIST")
je n'ai pas de problème à ouvrir le data connection...

Une idée ?
cs_drakkard Messages postés 99 Date d'inscription lundi 20 juin 2005 Statut Membre Dernière intervention 20 janvier 2009
7 avril 2008 à 17:45
Bonjour,

vraiment très intéressante cette source...
Une aide ( quelques exemples upload / download ) aurait été un plus, car pas évident pour les non initiés...
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
22 janv. 2008 à 22:31
précisément.
on retrouve ce soucis frequemment, il suffit d'utiliser la fonction avec le nom de la lib...

on a souvent ca avec les fonctions de Texte
kgdecaen Messages postés 38 Date d'inscription dimanche 5 novembre 2000 Statut Membre Dernière intervention 16 décembre 2009
22 janv. 2008 à 21:46
bah normalement text1.text = time$ devrait fonctionner logiquement mais l'ocx doit avoir ouvert une variable time$ aussi je crois
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
22 janv. 2008 à 21:44
suffisait pourtant d'écrire :

Text1.Text = DateTime.Time$
kgdecaen Messages postés 38 Date d'inscription dimanche 5 novembre 2000 Statut Membre Dernière intervention 16 décembre 2009
22 janv. 2008 à 21:19
dès que je charge le plugin bah la variable time$ est dead car dans mon prog je mets un text1.text = time$ et ca marche pas mais bon j'ai pris la vielle technique du shell (ftp )
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
19 janv. 2008 à 23:29
quoi cette histoire de time$ ?
kgdecaen Messages postés 38 Date d'inscription dimanche 5 novembre 2000 Statut Membre Dernière intervention 16 décembre 2009
19 janv. 2008 à 19:54
j'ai pas pu essayer ce code car dans mon programme dès que je charge l'ocx ftp dans les references bah ca me créer un erreur sur ma variable time$ ... dommage surtout que plein de monde le trouve cool mais moi j'ai pas pu l'ajouter dans ma source mais bon sinon ca marche bien avec ta source 10/10 bon code dommage que ca me bloque ma variable time$ ++ mon msn est kgdecaen@hotmail.com si tu veux qu'on se contact ;) @++
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
4 juin 2007 à 12:08
qu'entends tu exactement par "ne fonctionne" pas ?

un message d'erreur ?
rien en sortie ?
...
Ulthar Messages postés 4 Date d'inscription vendredi 11 juillet 2003 Statut Membre Dernière intervention 4 juin 2007
4 juin 2007 à 10:02
J'ai essayé avec les deux modes PASV ou non et dans les deux cas tout fonctionne sauf les transferts de fichiers.
J'ai essayé sans la commande .dataconnect sans meilleur resultat.
Merci pour vos réponse rapide.
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
31 mai 2007 à 23:44
pas ca en tete...
mais pas besoin d'appeler .DataConnect, me semble

a voir également si tu dois etre en mode passive ou non...
simonth58 Messages postés 27 Date d'inscription vendredi 28 mai 2004 Statut Membre Dernière intervention 17 mai 2013
31 mai 2007 à 22:01
A l'aide j'essaie par tous les moyens de faire marcher la commande download mais sérieusement je ne réussis pas a la faire fonctionner, et est-ce que quelqu'un pourrait me l'expliquer s'il vous plait?
Ulthar Messages postés 4 Date d'inscription vendredi 11 juillet 2003 Statut Membre Dernière intervention 4 juin 2007
31 mai 2007 à 16:46
J'ai oublier d'indiquer que j'ai essayer sur plusieurs serveur et cela marche avec d'autres clients FTP.

Merci
Ulthar Messages postés 4 Date d'inscription vendredi 11 juillet 2003 Statut Membre Dernière intervention 4 juin 2007
31 mai 2007 à 16:43
L'objet est bien mais j'ai un problème à l'utiliser.
J'arrive à me connecter et à changer de répertoire mais il m'est impossible de télécharger (download) ou d'envoyer (uplod) avec. Il ne se passe rien (juste un petit bloquage de quelques secondes).
J'affiche le Log et je remarque qu'il ne se passe réellement rien avec ces deux commandes et aucun des évènement 'Transfert' ne réagit.
Pour uploader, je fais par exemple:
.connect "serveur","login","password"
.path = "\pub"
.dataconnect
.upload "C:\image.jpeg","image.jpeg"
.disconnect
Tout fonctionne sauf l'upload, aurais-je oublier quelque chose?
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
9 janv. 2007 à 06:48
content que ca te serve ^^
fiko81 Messages postés 381 Date d'inscription vendredi 24 septembre 2004 Statut Membre Dernière intervention 5 septembre 2010 3
8 janv. 2007 à 20:29
Moi je dis... En fait rien à dire c'est parfait.
Sans vouloir négliger les autres sources qui sont censées faire la même chose, c'est la seule qui m'a permis de réaliser ce que je veux sans problème...
Merci pour ta source.
10/10
cs_calsn Messages postés 15 Date d'inscription samedi 18 janvier 2003 Statut Membre Dernière intervention 21 mars 2013
20 oct. 2005 à 17:45
J'ai en fait développé, entre autres, un logiciel de diffusion Musicale / Publicité / Animation pré-enregistrée contrôlé par un serveur distant, le tout en Direct X.

Il me manquait un OCX performant pour le transfert de fichiers, ce que j'avais fait étant trop lent et assez peu complet.

C'était la seule pièce qui manquait à mon puzzle. Maintenant c'est fait ; et ça marche.

Merci pour ton aide précieuse.

... Je t'ai noté 9/10 eu égard à ce soucis de 'time' (je sais, un vieux c'est vache, ça ne laisse rien passer !)
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
20 oct. 2005 à 16:27
content de voir que tu as mis les mains dans le code, avec brio
cs_calsn Messages postés 15 Date d'inscription samedi 18 janvier 2003 Statut Membre Dernière intervention 21 mars 2013
20 oct. 2005 à 14:27
Effectivement, c'est moi qui avait posté (j'ai un peu la tremblotte et du coup... Je poste en double lol)

c'est effectivement la fonction time qui ne fonctionne plus sous VB lorsque ton composant est présent.

Rien d'étonnant à cela lorsque l'on éppluche ton code puisque tu en a fait une variable pour ton OCX (pardonnez mon language approximatif mais je me suis mis au code très vieux et je manque un peu de vocabulaire)

Comme solution, au lieu de retoucher ton code (il est tellement parfait que je n'oserai le défigurer !) j'ai simplement créé mon OXC qui renvoit l'heure. Ainsi, le problère est résolu.

Au lieu, dans mon code de tapper 'Time' pour récupérer l'heure système, je tappe 'cheure.heure' cheure étant le nom de mon OCX et heure la variable qui renvoie l'heure...

C'est du bidouillage fait en 3 minutes, mais ça résoud le soucis sans retoucher à ton code.

Voila monsieur.
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
18 oct. 2005 à 21:10
un admin a semble-t'il supprimé le dernier message qui était en doublon, en même temps que moi.
ce qui fait que celui-ci n'est plus présent...

il concernait la donnée Time qui renvoie 00:00 systématiquement

en fait, chaque serveur, sous chauqe IS implémente les données comme il le souhaite.

Ca m'a donné pas mal de fil a retordre pour que l'on puisse récupérer les infos, la plupart du temps.

Je ne me souviens pas en détails de la structure de mon composant, mais il est possible de pouvoir récupérer directement les données brutes, renvoyées par le serveur.

libre à toi de les découper, dans ton programme, ou de modifier le composatn pour pouvoir récupérer une heure correcte.
hex_man Messages postés 28 Date d'inscription mercredi 21 novembre 2001 Statut Membre Dernière intervention 12 décembre 2007
18 juil. 2005 à 01:42
Salut j'ai bcp aimé ton ocx, j'ai un peu bataillé pour choppé comment tt ça fonctionnait, mais j'ai toujour sun problème non résolut: le Download marche cependant quand on veut Dl des images ou autres fichiers un peut concéquent fianalement le source reçoit des paramètres incorrectes qui sotn écris dans le fichier de destination. Le problème ne vient pas de l'upload car le fichier sur le serveur est nikel. mais kan on passe au Download la c problématique parcequ'on reçoit une version "corrompue du fichier". j'ai parcuru ton source et j'ai remarqué ke pour tt ce qui est réception de donné tu utilisé winsock et winsock génère le m^me type de problème en P2p lorsqu'on s'ammuse à envoyer un fichier d'un poste à l'autre, j'avais aussi remarqué le m^me type de problème. Mais j'ai jamais réussi a le régler. si tu as une idée je susi totalement preneur (c peut être moi qui utilie mal l'ocx aussi ...) merci d'avance.
nihilis Messages postés 2 Date d'inscription vendredi 4 mars 2005 Statut Membre Dernière intervention 18 juillet 2006
7 juin 2005 à 15:42
Bonjour à tous,

Voila j'utilise cet OCX via Visual FoxPro 9 et j'ai un petit problème.
Après l'appel de Rey_FTP.Connect(...) la propriété Rey_FTP.IsConnected reste à "Faux" et par conséquent bloque tous les autres appels de méthodes.
Est ce que c 'est déjà arrivé à quelqu'un, et si oui qui a une solution ?

Merci d'avance à tous
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
28 janv. 2005 à 14:29
j'ai cru remarquer le probleme egalement....

J'ai, je crois fermé les Sockets a la barbare....

Je bosse sur d'autres choses, et je m'apercois que certains serveurs envoient les infos de manière differentes des autres.... je vais devoir retoucher mon code, pour m'adapter (heure envoyée au lieu de l'année)
cs_Yoyo2B Messages postés 125 Date d'inscription jeudi 27 février 2003 Statut Membre Dernière intervention 6 mars 2008
28 janv. 2005 à 12:55
salut reinfield,

comme d'hab, tu poste des sources propres, mais là, g un souci !! connection , dwld, etc ... tout est bon, mais dès que je lance un deconnect ==> boucle infinie car aucune réponse du serveur ftp ... pourtant, en analysant ta source, g pas vu de pb, la commande est bonne et tout et tout ...
J'utilise ton contrôle pr me connecter à une dizaine de serveurs ftp, et aucun de ces serveurs ne renvoie de réponse. Grrrr ... c assez gênant ds le principe, car je suis obligé de killer VB6.exe pr m'en sortir. Pr le moment, g palié au pb en mettant un timer, mais la déconnection ne se fait tjrs pas ... aurais-tu une vague idée ???


Merci d'avance pour ta réponse (et ta source ki est qd même plus ke bien pratique !!)
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
20 déc. 2004 à 13:24
sacré labsus ;-)

Download prend plusieurs parametres...

Element... dans lequel tu indiques quel fichier telecharger
TargetPath, qui precise le fichier de destination
et RestSize, qui permet de restaurer un transfert (voir RFC concernant le FTP)

pour l'element, on pourra par exemple mettre :

FTP.Files.Item("ITK30BB0A43RR9P335P01C23368M")

a noter que la méthode Download se trouve également là :

FTP.Files.Item("ITK30BB0A43RR9P335P01C23368M").Download "C:\a.afp"
cs_Apachefr Messages postés 16 Date d'inscription jeudi 1 juillet 2004 Statut Membre Dernière intervention 25 septembre 2007
20 déc. 2004 à 09:35
Désolé, VIVE les REYCOMPONENTS V2 !!!
cs_Apachefr Messages postés 16 Date d'inscription jeudi 1 juillet 2004 Statut Membre Dernière intervention 25 septembre 2007
20 déc. 2004 à 09:34
Félicitations pour cet ocx Renfield, mais une petite documentation ou un projet exemple serait bienvenue.

J'ai cependant une question :
Comment fait on pour utiliser la fonction reyftp.download stp ? merci...

Et vire les REYCOMPONENTS V2 !!!
zniavre Messages postés 1 Date d'inscription vendredi 12 mars 2004 Statut Membre Dernière intervention 30 novembre 2004
30 nov. 2004 à 11:30
je ne peut pas vraiment emetre une critique constructive sur cette source, etant moi meme bien inferieur a ce niveau...
par contre, j'ai un petit soucis pour avoir le le niveau de progression de l'upload. j'utilise cette fonction :
Private Sub ReyFTP1_TransferProgress(Direction As Rey_FTP.FTPTranferDirection, FileName As String, Percent As Long, ByteSent As Double, FileSize As Double, Speed As Long)
Debug.Print "Percent:" & Percent
End Sub
et ca me sort toujours 100 des le debut de l'upload.
si quelqu'un a la reponse a ce surement TRES simple probleme..... MERCI!!!
Achoum Messages postés 39 Date d'inscription mercredi 17 avril 2002 Statut Membre Dernière intervention 2 juillet 2005
27 nov. 2004 à 14:59
10/10
Un code exeptionnel.
Rien a dire ........ si ce n'est Bravo.

Achoum
Scalpweb Messages postés 1467 Date d'inscription samedi 13 mars 2004 Statut Membre Dernière intervention 5 mai 2010 4
27 nov. 2004 à 11:32
Oui, c'est vraiment simpa comme source. Bravo à toi. Je ne connaissais pas cette classe, mais je crois que je ne vais plus la lâcher.
cs_AbriBus Messages postés 492 Date d'inscription jeudi 28 août 2003 Statut Membre Dernière intervention 25 avril 2007 5
27 nov. 2004 à 02:07
Renfield, tu peux pas t'empecher de faire des trucs de fous toi !!
encore un code mortel... 20/10...

Que le cSocket soit avec toi...

BriBus...
olivierXIII Messages postés 50 Date d'inscription lundi 21 avril 2003 Statut Membre Dernière intervention 4 août 2005
26 nov. 2004 à 20:34
J'avais déjà vu passer la classe cSocket sur un projet.
En quoi est-elle plus rapide?
Temps de réponse? Débit?
Sur vbip.com, l'auteur ne mentionne pas la rapidité, mais je veux bien croire qu'elle soit effectivement plus rapide.

PS: Désolé pour le moitié-hors sujet ;D
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
26 nov. 2004 à 18:55
on pourrais utiliser l'API SetTimer, mais le controle Timer fais ca bien...

Merci ;-)
cs_Urgo Messages postés 780 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 16 avril 2009 1
26 nov. 2004 à 18:45
vbip.com pour ne pas changer :)
C'est vrai qu'elle est merveilleuse cette classe...

Je vois que tu as utilisé un Timer pour la commande "NOOP", on peut guère faire mieux. Bel exemple que tu postes là ;)
10/10
thierrydelepine Messages postés 521 Date d'inscription mardi 24 décembre 2002 Statut Membre Dernière intervention 11 septembre 2008 6
26 nov. 2004 à 17:40
merci Renfield je le testerai cela m'interresse beaucoup surtout avec UNIX
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
26 nov. 2004 à 13:59
Oui, je m'en sers au boulot avec des serveurs sous Unix....
thierrydelepine Messages postés 521 Date d'inscription mardi 24 décembre 2002 Statut Membre Dernière intervention 11 septembre 2008 6
26 nov. 2004 à 13:56
petite question est ce que ton OCX fonctionne avec Unix car il y a quelques différences avec windows ?
Rejoignez-nous