Fórum Campo Imagem no FireBird #52426

23/08/2005

0

Pessoal,

To querendo salvar uma imagem num campo Blob, tamanho 80, segmento 0, type binary, utilizando o seguinte código:


var stm: TStream;
begin
  try
   try
    DBImage1.Picture.Graphic.LoadFromFile(Edit1.Text);
    stm := TMemoryStream.Create;
    try
    DBImage1.Picture.Graphic.SaveToStream(stm);
    stm.Position := 0;
    dm.cdsEmpresaLOGO.LoadFromStream(stm);
    except
    ShowMessage(´Falha ao gravar arquivo no Banco de Dados´);
    end;
   except
   ShowMessage(´Falha ao abrir arquivo´);
   end;
  finally
  Panel1.Visible := false;
  Panel2.Visible := true;
  end;


Só q tá dando erro. Uso com ClientDataSet, quando dou o ApplyUpdates(0), dá erro no IBX.

tem uma forma mais fácil de gravar?

se não, o que está errado no código?

grato.

mjr


Mjr

Mjr

Responder

Posts

24/08/2005

Sremulador

qual o erro que esta apresentando ???


Responder

Gostei + 0

24/08/2005

Mjr

Erro no IBX: Nenhum mapeamento para o código do erro encontrado.


Responder

Gostei + 0

25/08/2005

Afarias

|Erro no IBX: Nenhum mapeamento para o código do erro encontrado.

Eita!! :shock: eu nunca vi o IBX mostrar uma mensagem de erro em português!!!

:roll:

T+


Responder

Gostei + 0

26/08/2005

Mjr

É porque eu instalei uma tradução das mensagens de erro do Delphi.

Mas alguém tem uma idéia do porque que está dando esse erro?

Essa é maneira correta de gravar campo imagem no BD?

grato.

mjr.


Responder

Gostei + 0

27/08/2005

Fsflorencio

Ao invés de usar um TStream, use o TMemoryStream, que ele te dá umas facilidades, tipo, carregar o arquivo direto:

stm.loadfromfile( edit1.text );

acho q vai funcionar.


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar