FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Imagen JPG en una base de datos Access
Hola a todos, esta es la primera vez que entro al foro. Quería preguntar si alguien me puede ayudar con esto:
Estoy tratando de mostrar una imagen jpg almacenada como objeto OLE en una bd Access, y me da este número de error: JPEG error #68. Lo que hago para mostrar la imagen es utilizar un objeto TImage, asignándole un objeto TJpegImage, a partir de un flujo de un campo de una tabla (que contiene la imagen). Todo esto se hace cuando se presiona un boton. Les paso el código del botón: Código:
procedure TForm1.botonClick(Sender: TObject); var flu : TADOBlobStream; Pic : TJpegImage; begin flu := TADOBlobStream.Create (AdoTable1Foto, bmRead); try flu.Seek(JpegStartsInBlob(AdoTable1Foto), soFromBeginning); //Esta función busca el inicio de la imagen Pic:=TJpegImage.Create; try Pic.LoadFromStream(flu); //Es aquí donde da el error ADOImage.Picture.Graphic:=Pic; finally Pic.Free; end; finally flu.Free end; end; Código:
function JpegStartsInBlob (PicField:TBlobField):integer; var flu : TADOBlobStream; buffer : Word; hx : string; begin Result := -1; flu := TADOBlobStream.Create(PicField, bmRead); try while (Result = -1) and (flu.Position + 1 < flu.Size) do begin flu.ReadBuffer(buffer, 1); hx:=IntToHex(buffer, 2); if hx = 'FF' then begin flu.ReadBuffer(buffer, 1); hx:=IntToHex(buffer, 2); if hx = 'D8' then Result := flu.Position - 2 else if hx = 'FF' then flu.Position := flu.Position-1; end; //if end; //while finally flu.Free end; //try end; |
#2
|
||||
|
||||
Hola
Uso access e incluyo jpg sin problemas en un campo memo, sin tanta complicacion, ni funciones, ni campos raros, ni nada. Para traer un jpg creado desde un archivo independiente a access tambien se puede con un memo. Saludos |
#3
|
|||
|
|||
Cita:
|
#4
|
|||
|
|||
He buscado en los foros, pero no doy con ningun tema donde se mencione el error #68 de la unidad Jpeg. No quiero ser molesto pero.. ¿alguien sabe de que se trata este error? o ¿donde puedo encontrar una referencia de estos errores para saber que hago mal en el código? El problema sale cuando se ejecuta la instrucción Pic.LoadFromStream(flu), y no entiendo por que, si el flujo tendría que ser correcto . Seguramente hay algo que no estoy observando, pero no se que es. Por favor ayudenme
Muchas gracias por su tiempo nuevamente, y me parece bárbaro este sitio, ya que enseguida tuve una respuesta. Saludos.. |
#5
|
||||
|
||||
Hay Solucion
Hola querido
Mira, lo mas probable es que no hayas buscado, porque no hace mas de cuatro semanas volvimos a solucionar el problema una vez mas. Aqui abajo te tiro el link del hilo donde esta la respuesta a tus problemas. Basicamente tenes que leer el Boletin Pascal N° 11. No se que es lo que quieres intentar con ese codigo y complicarte la existencia de esa forma. Haceme caso y lee el hilo que te indico aqui y despues buscas el boletin pascal n°11 cuyo link esta en ese hilo. Contanos como te fue y si sos nuevo lee bien la guia de estilo. http://www.clubdelphi.com/foros/showthread.php?t=41768 Adios |
#6
|
|||
|
|||
Gracias por la ayuda. Espero poder ayudarles en algo alguna vez.
|
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Imprimer Con QuickReport Imagen JPG en Base de Datos | nachoalbano | Impresión | 3 | 18-09-2006 01:05:42 |
base de datos access en Red | Nbull | Conexión con bases de datos | 5 | 13-01-2006 12:31:49 |
Base de datos con campo imagen | raffagia | MS SQL Server | 1 | 03-03-2005 09:32:32 |
Guardar una archivo de imagen (bmp,jpg..etc), en la base de datos | cahosoft | Firebird e Interbase | 4 | 31-07-2004 16:53:56 |
Imagen en base de datos. | kwan | Conexión con bases de datos | 20 | 29-07-2003 22:48:21 |
|