Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   TMysql imagenes jpeg (https://www.clubdelphi.com/foros/showthread.php?t=7312)

xobius 11-02-2004 16:21:16

TMysql imagenes jpeg
 
hola a todos.

Estoy utilizando el componente Tmysql, con el cual quiero cargar una
imagen jpg en un campo Blob.

para ello el copmponente posee un metodo como el siguiente:
Mysql.modify.add('nombredelcampo',pchar(''''+cadena de texto+'''');
para luego utilizar el metodo prepare insert y execute.
De esa manera se carga cualquier campo.

Como necesito cargar una imagen utilizo la clase TMemoryStream, al
cual asigno la imagen del siguiente modo:

imagen:=jpeg.create; (definida en var como imagen:tgraphic;//incluyo
en la clausula uses la unidad jpeg)
imagen.loadfromfile('directrio/archivo.jpg');

//Para luego asignarselo al Stream asi
Stream:=TMemoryStream.create; (definida en var como
Stream:TMemoryStream)
imagen.savetostream(stream);

//Aqui vienen los problemas
// como necesito cargar los datos en un buffer lo hago del siguiente
modo
new(buffer); // definida en var como buffer:pchar
block:=stream.size+1; //entero
buffer:=AllocMem(block);
//finalmente
stream.readbuff(buffer,stream.size);

aqui es donde salta una excepcion que me indica que la carga se
realiza de manera incorrecta.
He probado con otros tipos de TStream (TFileStream para ser presiso)
y me continua dando el mismo error.

Ya he intentado todo lo que se me ha ocurrido sin lograr hacerlo
funcionar.

Si alguien conoce como usar la clase TStream u otra manera de ingresar
imgenes en campos blob agradeceria su ayuda.

saludos.

Jose


La franja horaria es GMT +2. Ahora son las 13:07:10.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi