INNOVATION : TRANSFERT DE FICHIER VIA WINSOCK DE PLUS DE 2 MO

cs_max12 Messages postés 1491 Date d'inscription dimanche 19 novembre 2000 Statut Modérateur Dernière intervention 7 juillet 2014 - 2 mai 2002 à 03:30
axelmeunierr Messages postés 9 Date d'inscription mardi 21 décembre 2004 Statut Membre Dernière intervention 14 mai 2006 - 22 déc. 2004 à 15:54
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/3158-innovation-transfert-de-fichier-via-winsock-de-plus-de-2-mo

axelmeunierr Messages postés 9 Date d'inscription mardi 21 décembre 2004 Statut Membre Dernière intervention 14 mai 2006
22 déc. 2004 à 15:54
vous etes drole au début......
entracyte Messages postés 32 Date d'inscription mercredi 31 mars 2004 Statut Membre Dernière intervention 14 juillet 2005
20 août 2004 à 21:53
La methode de DeAtHCrAsH est super pour les petits fichiers, mais celiphane as raison pour les gros fichier, rien ne vaut sa méthode, meme si je la fais plafoner a 2.048 Ko/s en adsl mais j'ai dus faire une erreur quelque part ( je ne copie pas les codes, je refais avec le meme type d'algo comme ça pas d'érreurs !!)
Voila, rien ne sert de se foutre sur la guelle, soyez sympa, vous manquez quand meme de tact, bon, n'ayant trouvé aucun code de transfert de fichier de taille inderterminé, je vais me le coder, si il est bien ,je vous donnerais l'algo, pas le reste car c'est idiot de ne pas programmer par soit meme et mon code ne marchera pas forcement avec tout les progs en faisant copier coller !!
Whismerhil Messages postés 8 Date d'inscription mercredi 15 janvier 2003 Statut Membre Dernière intervention 14 mai 2007
27 juin 2003 à 17:46
houlaaaaa tout pleins de patés partout !!!
bon heu je charge les deux sources et j'apprend a transferer un fichier de plus de 200Ko :D

(si un jour j'ai le temps je lirais vos patés :D )

Bonne prog a tous
et pi mettez vous sur dolphin project avec ce que vous tappez ca peut le faire :D
celiphane Messages postés 466 Date d'inscription samedi 16 février 2002 Statut Membre Dernière intervention 20 avril 2007
23 juin 2003 à 17:20
"Je vais cette fois ci essayer de faire beaucoup mieux"
faut croire qu'il a compris les pbs de son code !
j'en aurai pris du temps et je m'en serai pris des insultes et des ridiculisations en public pour lui faire admettre que ce n'était pas une "innovation" ;)
comme quoi c'était vraiment contre moi, parceque ca lui coupait la gloire de sa source, et pas pour de vrai ! c'est pour ca qu'on s'en veut pas tout les 2 !

hein copain
Dinofly Messages postés 22 Date d'inscription vendredi 10 janvier 2003 Statut Membre Dernière intervention 22 mars 2005
6 févr. 2003 à 18:42
Merci our la dispute, ca m'a cultivé !
:D
cs_BiSi Messages postés 37 Date d'inscription mardi 23 juillet 2002 Statut Membre Dernière intervention 17 avril 2004
20 sept. 2002 à 00:57
Au vu des commentaires de Proger, ce programme mérite effectivement une refonte complète.

Néanmoins j'avoue que la distraction fut de mise grâce à toi et Célophane sur un forum qui se veut pourtant sérieux (ou presque). Enfin c'est vrai qu'il vaut mieux s'expliquer une bonne fois pour toute.

Allez, je te souhaite bon courage pour nous refaire un programme béton.
bye.
DeAtHCrAsH Messages postés 2670 Date d'inscription vendredi 25 janvier 2002 Statut Membre Dernière intervention 6 février 2013
12 juil. 2002 à 11:57
Je vais cette fois ci essayer de faire beaucoup mieux car il est vrai que celui la n'est pas tres au point et occupe bcp de memoire inutillement...
Proger Messages postés 248 Date d'inscription vendredi 10 novembre 2000 Statut Membre Dernière intervention 19 décembre 2008
22 juin 2002 à 11:59
8/10 pour l'interface (le code de l'interface est bien pratique)
8/10 pour la clareté du code, mais -1 car ce n'est pas dans un module séparé (donc inexploitable facilement), et -1 car ce n'est pas commenté
3/10 pour le code de transfert :
-y'a franchement des trucs inutiles (SendMessage : mais que vient faire une API pareil dans un transfert winsock?? surtout si c'est juste pour changer des couleurs... le code pour retrouver le nom de fichier et vraiment mauvais : imagine si le fichier s'appelle c:super.dada.txt ...)
-ensuite les Ko se calcul en divisant part 1024 et non pas par 1000
-charger le fichier source dans une variable String et une très très très mauvaise idée, et l'envoyer tel qu'elle avec SendData et encore pire.
-la source n'utilise pas SendProgress ni SendCompleted dans la partie "envoie" : coté client on n'a pas d'infos sur le transfert.
-c'est vraiment (j'insiste) pas un code exploitable (il faut séparer le code-noyau, tranferrant les données, du code d'interface!!)
-c'est pas un bon code pour envoyer des gros fichiers, car celui-ci charge le fichier dans la RAM (donc oubliez, au dela de 5Mo de transfert...)

en gros, le principe de son code est :
coté client : charger le fichier a envoyé dans une String puis faire winsock.SendData LeFichierEnString
coté serveur : winsock.GetData StrTemp puis LeFichierRecu = LeFichierRecu & StrTemp (toutes les secondes on regarde la taille de LeFichierRecu pour en déduire le taux de transfert)
Tout le reste et du code d'interface.

Au final on a donc 8 + 6 + 3 17 , int(17/3) 5 . voila. 5 pour la note de ce code.
cs_SHIVA Messages postés 97 Date d'inscription vendredi 28 décembre 2001 Statut Membre Dernière intervention 1 décembre 2003
13 juin 2002 à 21:44
SUPER COOL !!!
cs_Jielde Messages postés 226 Date d'inscription mardi 17 octobre 2000 Statut Membre Dernière intervention 1 décembre 2010
6 juin 2002 à 21:28
Slt, super ton prob mais pourrais tu mettre des commentaire ? SVP
cs_Freemind Messages postés 46 Date d'inscription mardi 30 avril 2002 Statut Membre Dernière intervention 27 novembre 2005
26 mai 2002 à 22:49
VBFrance, le forum ou les développeurs se défoulent, en s'en mettant plein la gueule...

vous avez pas plutôt du code à taper?
celiphane Messages postés 466 Date d'inscription samedi 16 février 2002 Statut Membre Dernière intervention 20 avril 2007
24 mai 2002 à 00:24
merci pour ma réussite, encore dsl de t'avoir tant fais ecrire,
et pour finir en beauté (!!) je vais qd mm t'expliquer le swapping car visiblement tu n'y comprend rien ! (et je dis po ca pour etre méchant promis juré craché !!!)

En fait, tu sais que ton PC utilises la RAM ou mem vive pour fonctionner, car TOUT ce que calcule le processeur passe d'abord par la RAM (contrairement aux idées reçues ca ne fait pas Disque Dur puis Processeur).
Seulement, et tu le sais aussi, la RAM est limité ! Or Billou avec son Windows il nous mange déjà une bonne partie de ces @#{!!~#{ de barettes qui coûtent la peau du {#[@#)!! (tu me suis je pense ! ;) )
Donc parfois, il arrive que certains programmes pour fonctionner ait besoin de BCP de RAM, comme c'est le cas avec tes lignes de codes tant controversées ces derniers temps (par moi uniquement je l'admet), mais toute cette RAM nécessaire, et bien il la trouve pas car il y en a souvent pas assez !
En effet, selon la densité du prog, Windows va réserver une qtt de RAM qui servira à son éxécution!
Et là, tu comprends que charger tes Mo dans une variable, ça dépasse l'espace allouer à ton prog !
MMMMMMMMAAAAIIIIISSSSSSS !!! Windows il est malin !!! (sisi!! ;) )
Ce qui dépasse il va le foutre sur ton disque dur, dans le temp... et là commence le SWAPPING ! tada !
Explication après la longue mise en contexte :
pour utiliser tes données, la machine va opérer ainsi :
vide du buffer en RAM, repérage sur le disque des données suivantes, stockage en RAM, passage en cache processeur, traitement, ici en plus on a l'envoie par Internet (enfin ca depend, en local c'est sur ca trace !), puis on vide le cache, et on reprend au début, et tous ceci par tranche de... 1 ou 2 Ko, comme opère mon prog que tu déteste ! gnarf ! (tu vois tout se recoupe en fait !)

Donc voilà, dsl de t'avoir fait tout ce speech, en tout cas dorénavant, quand un emmerdeur comme moi te parlera de ce tintamare, tu sauras de quoi il en retourne !
Et pis tu te sentiras peut-être pas obligé de prendre la mouche !

(quoi qu'il en soit, j'ai bien rit, et mes potes aussi ! ;)
et puis rassure toi, mon cerveau va bien merci,
et puis aussi, sisi, ton prog marche avec plus de 3 mo, il suffit de le bidouiller !)

@+, et pour toi aussi, bonne chance pour tes futures progs
Céliphane (qui se trouve à la fois être Céline ET Stéphane, pour toi qui aimait tant à parler à Mr Céliphane, tu tombes de haut ! ;) )
Sans ranc'
DeAtHCrAsH Messages postés 2670 Date d'inscription vendredi 25 janvier 2002 Statut Membre Dernière intervention 6 février 2013
23 mai 2002 à 23:02
Nan mais la tu ne repond pas a ma question .... Tu es censsé ne plus me parlé ... Ce qui confirme bien ce que je dis ... Tu es borné ...
De plus tu n'as apparement pas d'imagination .... T'aurais pu faire mieux que reprendre mon style ....
Tu n'as aucune idée personnelle ... Si tu dis pas "On" , tu reprend ce que dis Almandric... C'est la que me viens la question a savoir si t'as un cerveau ???

Celiphane :
" [...] je l'ai essayé, ce n'est pas fiable, le swapping bouffe toutes les ressources dès qu'on dépasse 10 Mo (soit 10*1024*1024 octets en ram pour un appli VB !!!) [..] "
======> Monsieur a essayé mon programme et pourtant il dis encore des conneries ... Avec ce programme il est impossible de transferer des fichiers de plus de 3.56Mo et toi tu me parle d'un transfert de 10Mo qui occupe bcp de memoire vive ( RAM ) .... On voit vite les menteurs .... Puis en plus tu te contredis bcp ... Il y a 2 ou 3 messages plus haut tu disais que je ne connassais pas la notion de swapping et la tu me dis qu'avec ma maniere qui est du swapping je charge la RAM inutillement ...
T'es sure que ca va bien ton ce truc qui te sert de cerveau ?
En tous cas moi j'en doute ....

Puis je me prend de loin pour une star ... J'aide et fais des programmes dans la possibilité de mes connaissances ... Sinon je doute fort que je serai la a discuter avec toi sur un sujets qui n'en vaut meme pas la peine ....

Mais bon pesonne n'est parfait ....

Sur ce je te laisse definitivement sur ce sujet en te souhaitant bcp de reussite dans la programmation ......

A+++

DeAtH_-_CrAsH :]
celiphane Messages postés 466 Date d'inscription samedi 16 février 2002 Statut Membre Dernière intervention 20 avril 2007
22 mai 2002 à 23:33
(Au fait :
"Mdrrrrrrrrrrr ... En local ??? A distance ??? ... Essaye le avant de parler .... Et tu veras la rapidité et la fiabilité .."
je l'ai essayé, ce n'est pas fiable, le swapping bouffe toutes les ressources dès qu'on dépasse 10 Mo (soit 10*1024*1024 octets en ram pour un appli VB !!!)

" niveau vitesse de transfert ton prog ne rivalise meme pas ... Imagine toi envoyer un fichier de 3MO avec ton programme ... Tu limite la taille des paquets a 2Ko"
Renseigne toi sur les applications professionnelles, faites par les gens qui font de l'informatique leur métier, et qui aujourd'hui n'en sont plus à insulter dans des comments... tu verras que c'est le système prédominant...

" et en plus de ca il faut que le client confirme la reception du paquets par un code 4 ... "
Quand tu sauras interprêté les lignes de codes d'un prog, déjà en VB, tu verras que c'est interne, en tout cas je ne comprend pas de quoi tu parles...

"T'as du fumé mon gars .... C'es vraiment se foutre de la gueule du monde de parler de rapidité avec ton truc .... "
Se passe de commentaires, quand on s'y connait un minimum et qu'on regarde de quel façon tu fais transiter tes fichiers...

"Comme je te l'ai deja dis va coder un programme pour du VRAI transfert de fichier de tout genre et apres on en reparlera ...."
Je suppose que tu parles du fait que mon programme transfert des fichier Wav ? as tu compris qu'il ne fait que ça car il est fait pour ça ? en revanche, si tu reprends le code de transfert en lui même, il transfert N'IMPORTE QUEL DONNEES, binaires ou pas, il transfert ce qu'on appelle courament un flux d'octets. je sais que tu ne connais pas ces termes, ravi de te les apprendre. C'est initialement juste pour ce code que je t'ai indexé vers ma source. apparemment tu l'as mal pris et maintenant tu fais le zouave.

" Tu veras vite qu'il y a plein de contrainte ....."
Des contraintes pour transférer des flux d'octets ? ha bon ? pas pour moi... Tu veux faire ta star devant les débutants ?


" Et que si tu utilise ta maniere j'ose meme pas imaginer ce que ca va donner avec un 56K ...."
Ce que ça donne aujourd'hui avec les technologies de transfert courantes, si ce n'est qu'elles sont codés dans des langages plus évoluées...

"Mais bon avant de parler de pretention regarde plutot leloge que tu fais de ton programme ....
Comme on dis : " Charité bien ordonné commence par sois meme ! ""
Très beau proverbe ! tu dois l'entendre souvent ! lol

"Je te laisse sur tes impressions ... Tu peux bien penser ce que tu veux ... Je prefere te laisser a ton ignorance car t'instruire serai une perte de temps vu comme tu es borné...."
C'est l'hopital que se fout de la charité. en tout cas moi j'aurais été content de t'apprendre ce que tu ne connais pas, mais vu que tu refuses d'écouter te pensant supérieur à tous, comme dis Almandric, remet toi en cause, on a juste voulu te montrer des choses que tu ignorais ! résultat, tu te moques de nous, dans un sentiment de supériorité exagérée. Dois-je te rappeler que tu t'évertue à nous rabaisser à propos d'un sujet qui te dépasses et sur lequel tu a fais des erreurs ?

"Bonne prog quand meme...
A++

DeAtH_-_CrAsH "
Merci, toi de même, enfin un peu de gentillesse ! Que diable ! quel image donnerais-tu aux informaticiens sinon ???)

Voilà, juste pour te montrer que tout le monde peut reprendre tout le monde, que tu n'es pas le seul à pouvoir le faire, et que, dans ce que tu dis, beaucoup de choses sont fausses, t'en déplaise...
DeAtHCrAsH Messages postés 2670 Date d'inscription vendredi 25 janvier 2002 Statut Membre Dernière intervention 6 février 2013
22 mai 2002 à 23:23
Tu ne devais pas ne plus parler avec moi ?
celiphane Messages postés 466 Date d'inscription samedi 16 février 2002 Statut Membre Dernière intervention 20 avril 2007
22 mai 2002 à 23:11
lol, ya des claques qui se perdent ! ptdr !
en fait t'es un rigolo toi ! tu as des amis avec qui parler ?
tiens : locamis.free.fr
lol ;p
(pour Mr DeAtH_-_CrAsH ;p)
allez, j'ai passer l'âge ! @+, et merci pour ces poilades...
DeAtHCrAsH Messages postés 2670 Date d'inscription vendredi 25 janvier 2002 Statut Membre Dernière intervention 6 février 2013
22 mai 2002 à 22:52
Bien bien .... Mr Celiphane ... Quel drole de gigolo....

Celiphane :
" [...] apparemment j'avais raison, tu ne connais pas le swapping... [...] "
===> La connaissance c'est comme la confiture ; moins on en a plus on l'etale ....

Encore Mr Celiphane :
" [...] je ne cherche pas la guerre contrairement à toi, je sais ce que je dis, ce que je vois, et je n'ai fais au final que commenter des réalités ! [...] "
====> Pourquoi il me parle de guerre ????

Re Celiphane :
" [...] messieurs dames, le ridicule saute aux yeux... [...]
====> Se prend pour un orateur mdrrrrrrrrrrrrr ......

Bon j'en arrete la sinon j'en ai pour la soirée a etudier la personnalité de ce truc ...

CONCLUSION sur Mr Celiphane :
- Dedoublement de personnalité
- Parano ( la guerre ??? )
- Ne fais que de dire "On" et ca je ne sais pas l'expliquer .. Surement qu'il se sent trop faible pour parler en son nom ....

REMEDE(S) :
=====> Malheureusement yen a pas ... Je sais c'est vraiment triste comme nouvelle .... Mais bon ... Faut pas deseperer ...

Sur ce, bonne soirée quand meme...
A++

DeAtH_-_CrAsH
celiphane Messages postés 466 Date d'inscription samedi 16 février 2002 Statut Membre Dernière intervention 20 avril 2007
22 mai 2002 à 19:12
lol
messieurs dames, le ridicule saute aux yeux...
apparemment j'avais raison, tu ne connais pas le swapping...
Tu comprends pas qu'un code comme ça est INUTILISABLE ???
Enfin, moi je m'en fous, je t'ai dis ce que j'avais à te dire, je ne cherche pas la guerre contrairement à toi, je sais ce que je dis, ce que je vois, et je n'ai fais au final que commenter des réalités !
Si pourtant, tu continues à descendre les gens qui te font des remarques, c'est qu'au fond, tu te defends, et c'est bien normal, quand on est fier et en tord.
Sur ce, je te dis au revoir, car je ne souhaite plus "discuter" avec toi. pourquoi ? parce que rien de ce que tu dis ne ressemble à des réponses...
Borné ? moi ?... on est bcp a en rire encore... et surement que tous ceux qui liront les comments de ton prog "révolutionnaire" en riront longtemps aussi...

Et pour finir méprisemment comme toi :

Bonne prog quand meme...
A++

Celiphane, simplement
DeAtHCrAsH Messages postés 2670 Date d'inscription vendredi 25 janvier 2002 Statut Membre Dernière intervention 6 février 2013
22 mai 2002 à 12:38
Mdrrrrrrrrrrr ... En local ??? A distance ??? ... Essaye le avant de parler .... Et tu veras la rapidité et la fiabilité .. niveau vitesse de transfert ton prog ne rivalise meme pas ... Imagine toi envoyer un fichier de 3MO avec ton programme ... Tu limite la taille des paquets a 2Ko et en plus de ca il faut que le client confirme la reception du paquets par un code 4 ...
T'as du fumé mon gars .... C'es vraiment se foutre de la gueule du monde de parler de rapidité avec ton truc ....
Comme je te l'ai deja dis va coder un programme pour du VRAI transfert de fichier de tout genre et apres on en reparlera .... Tu veras vite qu'il y a plein de contrainte ..... Et que si tu utilise ta maniere j'ose meme pas imaginer ce que ca va donner avec un 56K ....
Mais bon avant de parler de pretention regarde plutot leloge que tu fais de ton programme ....
Comme on dis : " Charité bien ordonné commence par sois meme ! "

Je te laisse sur tes impressions ... Tu peux bien penser ce que tu veux ... Je prefere te laisser a ton ignorance car t'instruire serai une perte de temps vu comme tu es borné....

Bonne prog quand meme...
A++

DeAtH_-_CrAsH
celiphane Messages postés 466 Date d'inscription samedi 16 février 2002 Statut Membre Dernière intervention 20 avril 2007
22 mai 2002 à 00:38
Tu te fiches de moi ??? tu ris devant ma source ? ARF, dsl c'est trop fort ! tu te rend compte que tu fais transiter un bloc de données ENORME, en le placant d'abord dans un buffer (donc une variable) !!! Tu es sur de t'y connaitre un peu ? tu connais la notion de swapping ? Comment peux-tu affirmer avoir fait un code pour faire transiter des fichiers ????
Je veux mon neveu que ca marche en local, mais putain à distance, comment que ca doit être drôle !!!!!!!!!
Toi, c'est sûr, t'es la crème des prétentieux, et aussi la crème des programmeurs !
Faudrait que tu redescendes sur terre, ton code, c'est juste une copie puis un transfert ! L'innovation ? je la cherche encore...

Moi en revanche, j'ai programmé un VRAI système de communication basé sur l'envoi d'un VRAI buffer (c'est à dire une variable ne dépassant pas les 1 ou 2 Ko et non pas un machin monstrueux de plusieurs Meg ! arf ! lol)
Ca suit un schéma réception-confirmation-réception-confirmation-fin
En tout cas, je vois pas de quoi tu es si fier... " DeAtH_-_CrASH Copyright " ! arf...

Allez, comme je te l'ai déjà dis, rions... (ha si qd mm, quel age as tu ?)

(Pis encore un conseil pour toi : déclare tes variables ! tu doubleras la vitesse d'éxécution !)
celiphane Messages postés 466 Date d'inscription samedi 16 février 2002 Statut Membre Dernière intervention 20 avril 2007
22 mai 2002 à 00:16
pas du tout, lol, tu es bien prétentieux... arf, allez, rions...
DeAtHCrAsH Messages postés 2670 Date d'inscription vendredi 25 janvier 2002 Statut Membre Dernière intervention 6 février 2013
21 mai 2002 à 23:23
Il est tres simple de transferer des fichiers de taille illimité .... La n'est pas le probleme .. Mais si tu n'as pas remaquer, avec le progz de transfert de fichier que j'ai fait, il y a une ouverture binaire, l'utilisation de 1 seul buffer ( limité a 3.56MO ) et surtout la possibilité d'envoie de fichier de n'importe qu'elle extension et avec un tres bon debit....
Je ne suis pas encore allé voir ton code pour le transfert de fichier wave ... Mais a tous les coups tu dois faire un transfert integral avec enregistrement au fur et a mesure des données qui arrivent dans un fichier ... ce qui pour moi n'as quasiment aucun merite... Mais bon j'ai pas encore vu ton code... je vais aller le voir et laisser un post au passage ...
Bonne prog
A+++

DeAtH_-_CrAsH
celiphane Messages postés 466 Date d'inscription samedi 16 février 2002 Statut Membre Dernière intervention 20 avril 2007
21 mai 2002 à 12:25
Salut, j'ai été a la source que tu m'a donnes, je la trouve pas terrible celle la , je l'avais deja vu, mais j'avais pas osé posé de comments : en effet, dans mon code pour chatter en vocal, je transfert des fichiers waves, donc de grosses tailles, et j'ai concu un code clean et clair de transmission pour des fichiers de tailles illimité, qui tourne a la perfection...
DeAtHCrAsH Messages postés 2670 Date d'inscription vendredi 25 janvier 2002 Statut Membre Dernière intervention 6 février 2013
2 mai 2002 à 09:30
THx ;)
Je l'ai testé avec des potes et j'ai reussi a envoyer des fichiers de 2.5 MO ... Quand tu l'essayeras sur le net, ca serai sympa de me dire s'il marche correctement chez toi ;) ... Ainsi qu'aux autres personnes qui auront l'occasion d'utiliser ce prog...

DeAtH_-_CrAsH
cs_max12 Messages postés 1491 Date d'inscription dimanche 19 novembre 2000 Statut Modérateur Dernière intervention 7 juillet 2014
2 mai 2002 à 03:30
Je suis ébloui, se code fonctionne parfaitement en local (Pas encore tester Remote) et n'est pas trop chiant a faire fonctionner alors Bravo c'est du bon taf :) En plus que j'ai un 56k je pouvais évidement pas envoyer de fichier plus gros que 3 ko s'il était envoyer en directe.

A+
Rejoignez-nous