Envoi d'un fichier par winsock : problème!

Résolu
myarouvb Messages postés 40 Date d'inscription samedi 11 novembre 2000 Statut Membre Dernière intervention 4 avril 2005 - 25 mars 2005 à 03:15
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 - 25 mars 2005 à 04:52
Bonjour,

Pour envoyer un fichier par winsock, j'utilise la portion de code ci dessous :

Open Fichier For Binary Access Read As #1
LocalData = Space(LOF(1))
Get 1, , LocalData
Close #1
Call Winsock.SendData(LocalData)

Seulement, si mon fichier est trop gros, il n'est pas transmis entièrement.

1/ est ce normal?
2/ comment y palier?

Merci.

1 réponse

cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
25 mars 2005 à 04:52
Salut
La réponse est sur le forum : fais une recherche.
En gros, c'est normal, les arrivées de données dans le winsock sont bufferisées, donc il ne reçoit que portion par portion --> à toi de connaitre la taille du fichier que tu reçois (il suffit que l'expéditeur te donne cette info avant l'envoi) et d'attendre que toutes les données soient arrivées pour les prendre en compte --> Il faut donc compter le nombre de caractères reçus et s'il est inférieur à la taille finale, stocker et attendre le reste.

Vala
Jack
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage. (Socrate)
3
Rejoignez-nous