Ver Mensaje Individual
  #1  
Antiguo 09-04-2016
darkamerico darkamerico is offline
Miembro
 
Registrado: dic 2010
Posts: 236
Reputación: 14
darkamerico Va por buen camino
Exclamation No Logro grabar una imagen desde Clipboard hacia la BD

Saludos amigos, estoy intentando grabar una imagen que tengo en un componente cxImage hacia la BD, la imagen la obtengo desde la camara web, luego la pongo en Clipboard en BMP:

Este codigo funciona bien:

Código Delphi [-]
procedure TForm9.BitBtn1Click(Sender: TObject);
var
  MyFormat : Word;
  AData : THandle;
  APalette : HPALETTE;
begin
  img.Picture.SaveToClipboardFormat(MyFormat, AData, APalette);
  ClipBoard.SetAsHandle(MyFormat,AData);
  form3.imgEnClipBoard:=true;
  form9.Hide;
end;

Luego en el otro formulario en OnActivate intento que la imagen se muestre y luego se grabe en su tabla correspondiente:

Código Delphi [-]
procedure TForm3.FormActivate(Sender: TObject);
var
  nomArch:string;
  BlobFieldValue:TMemoryStream;
begin
  if imgEnClipBoard=false then
   tab.PageIndex:=0
  else
  begin
    BlobFieldValue:=TMemoryStream.Create;
    imgFoto2.Picture.LoadFromClipboardFormat(cf_BitMap,ClipBoard.GetAsHandle(cf_Bitmap), 0);
    imgFoto2.Picture.Bitmap.SaveToStream(BlobFieldValue);

      dm.q_UPDFoto.Close;
      dm.q_UPDFoto.Params[0].LoadFromStream(BlobFieldValue,ftblob);
      dm.q_UPDFoto.ParamByName('IDPerx').AsInteger:=StrToInt(txtID.Text);
      dm.q_UPDFoto.ExecSQL;

  end;

El error aparece en la linea: dm.q_UPDFoto.ExecSQL;

El error que aparece es el siguiente:



El SQL del componente q_UPDFoto es el siguiente:

Código SQL [-]
UPDATE personal set foto=:FOTOX
where id_personal=:IDPerx

Agradezco cualquier alcance que me puedan brindar.
Responder Con Cita