aide svp network
- Le psychopathe
- Messages : 764
- Inscription : jeu. 03/mars/2005 19:23
aide svp network
Voilà je suis en train de faire un serveur en pure basic.
J'ai plusieurs problèmes :
- quand on envoit un fichier le programme se stop, on m'a dit d'utliser un thread mais bon côté client il faut faire la même.
- En plus je voudrais une barre de progréssion donc je pense à découper les fichiers en morceaux et les remettre aprés !
Je galère ! Aidez moi
merci
++
J'ai plusieurs problèmes :
- quand on envoit un fichier le programme se stop, on m'a dit d'utliser un thread mais bon côté client il faut faire la même.
- En plus je voudrais une barre de progréssion donc je pense à découper les fichiers en morceaux et les remettre aprés !
Je galère ! Aidez moi
merci
++
- Le psychopathe
- Messages : 764
- Inscription : jeu. 03/mars/2005 19:23
rp
SendNetworkData(ConnectionID, *BufferMemoire, Longueur)
Oui j'y avais pensé mais je n'ai encore jamais touché à sa avec pure basc et l'aide pour cet exemple est vraiment ...
connectionID cela identifie l'autre en clair
Mais *BufferMemoire j'aurai besoin d'explicationS, ainsi que pour longueur. Avant j'étais sous dark basic ! donc la c'est bon mais il faut m'expliquer!
Oui j'y avais pensé mais je n'ai encore jamais touché à sa avec pure basc et l'aide pour cet exemple est vraiment ...
connectionID cela identifie l'autre en clair
Mais *BufferMemoire j'aurai besoin d'explicationS, ainsi que pour longueur. Avant j'étais sous dark basic ! donc la c'est bon mais il faut m'expliquer!
*BufferMemoire represente l'adresse mémoire (souvent appelé adresse buffer) où il y a les données à envoyer et Longueur représente la taille de ce que tu veux envoyer , par exemple : (fait sans tester, il y a peu être des fautes)
Voilà environ se qu'il faut faire pour envoyer les 2000 premiers octets, je te laisse de référer a la doc si j'ai oublié un commentaire
Sinon va voir sur www.purearea.net section Codearchiv, il doit bien y avoir des exemples, et profites en pour regarder les thread, ça te sera très utile
Code : Tout sélectionner
*Buffer.l = AllocateMemory(2000) ; *Buffer va contenir l'adresse mémoire
; 2000 représente la taille en octets de l'envoi
Openfile(0,"A_Envoyer.xxx")
ReadData(*Buffer,2000) ; Lit 2000 octets du fichiers en cours donc de A_Envoyer.xxx
SendNetworkData(ConnectionID,*Buffer,2000)

Sinon va voir sur www.purearea.net section Codearchiv, il doit bien y avoir des exemples, et profites en pour regarder les thread, ça te sera très utile

peut-être un truc de ce genre ?
Et ensuite tu compares LongueurLue à Longueur pour vérifier que les datas sont bien dans le buffer.
je n'ai pas testé ,mais c'est une piste à explorer
[EDIT]
Oliv est plus rapide que moi
Code : Tout sélectionner
If ReadFile(0, Fichier$)
longueur = Lof()
*Buffer = AllocateMemory( longueur)
LongueurLue = ReadData(*Buffer, longueur)
CloseFile(0)
EndIf
je n'ai pas testé ,mais c'est une piste à explorer
[EDIT]
Oliv est plus rapide que moi

Alors premierement, pour envoyer un fichier, je ne vois pas d'autre solution que SendNetworkData (enfin bon j'ai pas l'aide sous les yeux mais de mémoire..)
Donc pour le coup t'es obligé de passer par cette fonction... Pour ne pas stopper le programme je recommande le thread (car il m'a semblé que côté réception, le programme n'est pas interrompu).
Pourquoi je te recommande un thread ? Parce que les appli client-serveur pro font du multithreading, c'est à dire que le serveur crée un thread par client. (Et aussi parce que l'ayant testé, je trouve que ca fonctionne bien ^^)
Si j'ai le temps je te fais un exemple...
Dri
Donc pour le coup t'es obligé de passer par cette fonction... Pour ne pas stopper le programme je recommande le thread (car il m'a semblé que côté réception, le programme n'est pas interrompu).
Pourquoi je te recommande un thread ? Parce que les appli client-serveur pro font du multithreading, c'est à dire que le serveur crée un thread par client. (Et aussi parce que l'ayant testé, je trouve que ca fonctionne bien ^^)
Si j'ai le temps je te fais un exemple...
Dri
- Le psychopathe
- Messages : 764
- Inscription : jeu. 03/mars/2005 19:23
rp
Ok DRI, cela serait sympa de me faire un exemple.
Par contre je ne veux pas de send data car avec cette commande on est bloqué pour savoir où le telechargement en est.
Je remercie aussi les autres (olive et comtois)pour leur aide car je trouve la section network trés difficile et l'aide mince.
Pour me contacter : Le-psychopathe@hotmail.fr
Par contre je ne veux pas de send data car avec cette commande on est bloqué pour savoir où le telechargement en est.
Je remercie aussi les autres (olive et comtois)pour leur aide car je trouve la section network trés difficile et l'aide mince.
Pour me contacter : Le-psychopathe@hotmail.fr
-
- Messages : 1092
- Inscription : mer. 28/janv./2004 16:22
- Localisation : 76
- Contact :
T'as juste besoin de suivre le forum, pas besoin de te contacter
. Et puis je me tue à faire de la pub pour Bird Chat, mais tu n'as pas de plus bel exemple. Le transfert de fichier a été fait par Oliv, donc s'il faut taper, c'est lui, pas moi
.


Heis Spiter, webmaster du site http://www.heisspiter.net
Développeur principal et administrateur du projet Bird Chat
Parti courir au bonheur du dév. public et GPL
Développeur principal et administrateur du projet Bird Chat
Parti courir au bonheur du dév. public et GPL

Re: rp
Sans SendData tu n'auras pas de controle de telechargementLe psychopathe a écrit :Ok DRI, cela serait sympa de me faire un exemple.
Par contre je ne veux pas de send data car avec cette commande on est bloqué pour savoir où le telechargement en est.
Je remercie aussi les autres (olive et comtois)pour leur aide car je trouve la section network trés difficile et l'aide mince.
Pour me contacter : Le-psychopathe@hotmail.fr

Tu voulais un affichage du pourcentage envoyé ???? (Fallait le dire

- Le psychopathe
- Messages : 764
- Inscription : jeu. 03/mars/2005 19:23
rp
Ok, si quelqu'un aV un petit exemple bien concret car ce n'est qu'une partie du prog mais la plus importante donc ...
Pour bird chat pourquoi le site est en anglais ??
merci a tous
Pour bird chat pourquoi le site est en anglais ??
merci a tous
-
- Messages : 1092
- Inscription : mer. 28/janv./2004 16:22
- Localisation : 76
- Contact :
Car le projet est d'abord réalisé en Anglais
.

Heis Spiter, webmaster du site http://www.heisspiter.net
Développeur principal et administrateur du projet Bird Chat
Parti courir au bonheur du dév. public et GPL
Développeur principal et administrateur du projet Bird Chat
Parti courir au bonheur du dév. public et GPL

- Le psychopathe
- Messages : 764
- Inscription : jeu. 03/mars/2005 19:23