Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Armazenar foto Sql Server


Alberto Mota

Pergunta

Prezados colegas, o código abaixo roda perfeito quando o banco de dados é access,

No sql server da o seguinte erro:

unknown picture file extension (.jpg)

Segue o código:

var
foto1,guardafoto : string;
Begin
with TblEmp do
Begin
guardafoto := inttostr(TblEmp.FieldByName('codigoEmp').AsInteger);
if not(fileexists('C:\folha\fotos\'+guardafoto+'.jpg')) then
begin 
foto1 := ('C:\folha\20.jpg');
end else
foto1 := ('C:\folha\'+guardafoto+'.jpg');
DbImage1.Picture.loadfromfile(foto1);

Desde já obrigado.

Editado por Douglas_Soares
Adição de tag code
Link para o comentário
Compartilhar em outros sites

7 respostass a esta questão

Posts Recomendados

  • 0

Creio que você está trocando os caminhos uma hora você poe C:\folha\ e outra C:\folha\fotos, posso estar enganado...... outra coisa, você está fazendo uma coisa sem sentido ao transformar um inteiro em string de uma tabela sendo que se pode obter o valor string diretamente dela... tente assim:

var
foto1,guardafoto : string;
Begin
with TblEmp do
Begin
guardafoto := TblEmp.FieldByName('codigoEmp').AsString;
if fileexists('C:\folha\fotos\'+guardafoto+'.jpg') then
begin
foto1 := ('C:\folha\fotos\'+guardafoto+'.jpg');
DbImage1.Picture.loadfromfile(foto1);
end else
foto1 := ('C:\folha\fotos\20.jpg');

Abraços

Link para o comentário
Compartilhar em outros sites

  • 0

Faça um debug pra ver se está passando alguma informação errada...

var
foto1,guardafoto : string;
Begin
with TblEmp do
Begin
guardafoto := TblEmp.FieldByName('codigoEmp').AsString;
ShowMessage('guardafoto: ' + guardafoto);
ShowMessage('caminho completo: ' + 'C:\folha\fotos\'+guardafoto+'.jpg');
if fileexists('C:\folha\fotos\'+guardafoto+'.jpg') then
begin
foto1 := ('C:\folha\fotos\'+guardafoto+'.jpg');
ShowMessage(foto1);
DbImage1.Picture.loadfromfile(foto1);
end else
foto1 := ('C:\folha\fotos\20.jpg');

Link para o comentário
Compartilhar em outros sites

  • 0

Infelizmente Douglas, o código parece estar ok.

Fiz o debug e o mesmo erro:

unknown picture file extension (.jpg)

A mensagem diz: Arquivo de extensão de imagem desconhecida(.jpg)

E como disse antes, usando o mesmo código num sistema em Access, roda perfeito.

Um abraço.

Link para o comentário
Compartilhar em outros sites

  • 0

Douglas, consegui resolver.

Alterei a extensão para bmp e rodou ok.

Obrigado.

Segue o código:

var

foto1 : string;

guardafoto : string;

Begin

with TblEmp do

Begin

guardafoto := inttostr(TblEmp.FieldByName('codigoEmp').AsInteger);

if not(fileexists('C:\folha\fotos\'+guardafoto+'.bmp')) then

begin

foto1 := 'C:\folha\fotos\2010.bmp';

end else

foto1 := 'C:\folha\fotos\'+guardafoto+'.bmp';

DbImage1.Picture.loadfromfile(foto1);

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...