Cargar jpg en picturebox nada mas recibirlo por un socket

Iniciado por Nanoc, 4 Febrero 2010, 02:15 AM

0 Miembros y 1 Visitante están viendo este tema.

Nanoc

Hola, buenas, me gustaria saber que tengo que hacer para cargar un jpeg nada mas recibirlo por un socket con winsock, es decir, sin guardarlo antes en disco duro, se que tengo que usar picture1.image = Loadpicture() para cargar la imagen del disco, pero si la tengo en una variable como la cargo y en que tipo tengo que almacenarla.

Espero que alguien pueda responderme.

Gracias

xmbeat92

pues se me ocurre una idea, que seria usar la forma inversa de como  guarda en disco la imagen de la clase CJpg, combinada con el api SetPixel al HDC, en cuanto lo logre lo paso
El hombre encuentra a Dios detrás de cada puerta que la ciencia logra abrir. -Einstein

cobein

#2
Hay muchas formas de hacerlo, API, GDI+, la clase para jpg como comento xmbeat92, hasta podes usar hooks para lograrlo pero eso depende de que "restricciones" tengas, en cuanto a OS, velociadad, conocimientos.

Edit: Un ejemplo usando hooks, no es lo mas "elegante" pero funciona a la misma velocidad que LoadPicture y no tiene dependecias raras.

http://www.2shared.com/file/11178465/a6d655d0/Virtual_File.html
http://www.advancevb.com.ar
Más Argentino que el morcipan
Aguante el Uvita tinto, Tigre, Ford y seba123neo
Karcrack es un capo.

Nanoc

#3
Amm eso de la encriptacion de la imagen me lo salto y veo el modulo mVirtualFile, que a partir de un array de bytes es capaz de cargar la imagen en un picturebox, si estais seguros de que eso es mas rapido que guardarla en disco duro y luego cargarla lo uso.

Muchas gracias de todos modos es justo lo que necesitaba

Edit:

Tengo un problema con esta linea

PicBuffer = PicBuffer + Data

PicBuffer es el array de bytes donde estoi almacenando la imagen y Data es un string donde estan los datos recibidos por el socket como agrego el contenido de Data al final de PicBuffer?