Ver Mensaje Individual
  #1  
Antiguo 11-10-2017
Avatar de Angel.Matilla
Angel.Matilla Angel.Matilla is offline
Miembro
 
Registrado: ene 2007
Posts: 1.350
Reputación: 19
Angel.Matilla Va por buen camino
Cargar imagen desde Firebird

Estoy usando este código que me facilitaron en otro foro:
Código:
TJPEGImage*  __fastcall BlobToJpg(TBlobField *CampoBLOB) 
{ 
    if(!CampoBLOB->Value.IsEmpty()) 
    { 
        TJPEGImage *JPeg = new TJPEGImage; 
        TMemoryStream *StreamTmp = new TMemoryStream; 
        CampoBLOB->SaveToStream(StreamTmp); //sacamos el jpg y se convierte a stream 
        StreamTmp->Seek(0,soFromBeginning); 
        JPeg->LoadFromStream(StreamTmp); 
        return(JPeg); 
    } 
    else 
        return(NULL); 
}
para poder sacar imágenes desde una tabla Firebird. Siguiendo las instrucciones del autor trato de cargar la misma en un objeto TImage de la siguiente forma a partir de un query:
Código:
Imagen->Picture->Assign(::BLOBtoJPG(Query->FieldByName("Imagen")));
pero tanto con esta sintaxis como de esta otra forma:
Código:
Imagen->Picture->Assign(::BLOBtoJPG(Query->FieldByName("Imagen")->Value));
En ambos casos me da error al compilar; en el primer caso me dice:
Cita:
E2034 Cannot convert 'TField *' to 'TBlobField *'
y en el segundo algo parecido:
Cita:
E2034 Cannot convert 'Variant' to 'TBlobField *'
¿Alguna idea para resolver el problema?
Responder Con Cita