Passer une image par un winsock

Résolu
MadM@tt Messages postés 2167 Date d'inscription mardi 11 novembre 2003 Statut Membre Dernière intervention 16 juillet 2009 - 20 août 2004 à 17:35
MadM@tt Messages postés 2167 Date d'inscription mardi 11 novembre 2003 Statut Membre Dernière intervention 16 juillet 2009 - 20 août 2004 à 18:37
Mon problème est que j'ai une image dans un picturebox et je voudrais l'envoyer par un winsock dans une autre picturebox.
En fait ce que je n'arrive pas à faire c'est faire passer cette image dans le winsock. Est ce que c'est possible déjà de passer une image de type Picture par winsock ? Si non comment est ce que je pourrais faire ?
Si vous pouvez m'aider, merci...

@ +
MadMatt

4 réponses

cs_EBArtSoft Messages postés 4525 Date d'inscription dimanche 29 septembre 2002 Statut Modérateur Dernière intervention 22 avril 2019 9
20 août 2004 à 18:33
MadM@tt> non en aucun cas tu ne peut passer de Picture dans un winsock c'est un objet COM donc un pointeur vers une structure de donnée propre au systeme.

Pour repondre a ton probleme utilise GetBitmapBits recupere les donnée du bitmap dans un tableau (puis compresse les) et envoi le tableau de byte par winsock

Dim Table() as Byte
'...
GetBitmapBits Picture1.Handle, TotalBytes, Table(0)
'...
Winsock1.SendData Table

Puis quand tu recoi tu fait recupere les données (decompress) puis tu definis ton bitmap avec SetBitmapBits

C'est long mais on peut pas envoyer un pointeur par winsock ça ne servirais a rien une adresse memoire n'est valide que sur un process donnée et pour une machine donnée.

@+

E.B.
3
cs_Pingouin Messages postés 262 Date d'inscription lundi 26 août 2002 Statut Membre Dernière intervention 24 août 2005
20 août 2004 à 18:01
Salut,

Je ne vois pas d'autre solution que d'enregistrer ton image dans un fichier puis de transferer celui-ci par winsock en le decoupant en petits paquets. Puis une fois recu tu recharges l'image dans l'autre picturebox. Voila je ne vois pas comment faire autrement.

@+

The Pingouin 8-)
0
MadM@tt Messages postés 2167 Date d'inscription mardi 11 novembre 2003 Statut Membre Dernière intervention 16 juillet 2009 1
20 août 2004 à 18:04
Oula non j'aimerais faire une sorte de temps réel (meme si ça ne sera pas très rapide) alors passer par le disque dur... ça sera trop long. J'aimerais trouver une méthode pour faire tout ça avec la mémoire... Mais déjà est ce qu'on peut passer une "Picture" par un Winsock ?
merci quand meme. @ +
0
MadM@tt Messages postés 2167 Date d'inscription mardi 11 novembre 2003 Statut Membre Dernière intervention 16 juillet 2009 1
20 août 2004 à 18:37
Ok ok je vois, en fait c'est qu'un pointeur...
Olala en plus j'avais commencé une source (a partir de différentes autres sources) pour récupérer un tableau de Bits mais j'avais au moins 20 lignes à la place de celle la lol.
Merci c'est pile poil ce qu'il me fallait, après le problème reste la compression bien sur, mais je vais me débrouiller.
Merci EBArtSoft
@ +
MadMatt
0
Rejoignez-nous