Fórum Comando abre Foto access Violation #582139
05/06/2017
0
procedure TFrmCadMembros.Button4Click(Sender: TObject);
begin
if AbreFoto.Execute then // abre dialogo para seleção de foto
begin
Foto.Picture.LoadFromFile(AbreFoto.FileName);
DM.TabMembro.Edit; // ativa modo edição da form
DM.TabMembroFOTO.value:=AbreFoto.FileName;
end
else
Foto.Picture.LoadFromFile(DM.TabMembroFoto.Value);
end;
procedure TFrmCadMembros.DBNavigator1Click(Sender: TObject;
Button: TNavigateBtn);
begin
Foto.Picture.LoadFromFile(DM.TabMembroFoto.Value); // atualiza foto na navegação
end;
procedure TFrmCadMembros.FormCreate(Sender: TObject);
begin
//Foto.Picture.LoadFromFile(DM.TabMembroFoto.Value);
Foto.Picture.LoadFromFile(DM.TabMembroFoto.Value);
end;
e esta me retornando o seguinte erro :
Project Adonai.exe raised exception class EAccessViolation with message 'Access violation at address at 007511B8 in module Adonai.exe'. Read of address 000001D4'.
Quando eu dou um Break sou levado a esta linha da form
Foto.Picture.LoadFromFile(DM.TabMembroFoto.Value);
que quando eu comento ela o erro desaparece.
Bom pessoal nao preciso nem diser que sou novo em Delphi neh!! Aguardo a ajuda de vc´s.
Quero desde já expressar meu agradecimento a todos que vem contribuindo tanto com suas duvidas quanto com a solução das mesmas, o motivo de tal gratidao é que tenho obtido muitos resultados com base no que venho encontrando no forum.
Abraços !!!!
Janilto Oliveira
Curtir tópico
+ 0Post mais votado
05/06/2017
DM.TabMembroFoto.Value
veja se está trazendo o caminho da foto corretamente.
Robson Morais
Gostei + 1
Mais Posts
05/06/2017
Janilto Oliveira
que no caso é o caminho : C:\\ProgramData\\Adonai_software\\Fotos\\XXXX.jpg
Eu nao tenho certeza de como verificar esse retorno mas segundo o que estou vendo esta correto sim.
Verifiquei tbm o campo da tabela TabMembro referente a imagem e o nome correto é FOTO mesmo.
Bo nao sei muito bem o que fazer mas este erro nao acontecia antes..
Aguardo noticias!! Obrigado
Gostei + 0
06/06/2017
Robson Morais
DM.TabMembroFoto.Value tenta assim tbem DM.TabMembroFoto.asString
veja se vai dar o retorno certo e vai debugando....
Gostei + 0
07/06/2017
Gutierry Pereira
Que componente é esse de foto que esta utilizando ?
Possa ser que a proriedade Picture do componente ainda não tenha sido criada.
Para identificar que esta dando o problema coloque um teste antes dessa linha onde o erro ocorre:
if Assigned(DM) Then
begin
showMessage('DM não esta instanciado');
// Solução dar um create no DM
exit;
end;
if Assigned(DM.TabMembroFoto) Then
begin
ShowMessage('TabMembroFoto não instanciado');
// Solução instanciar o TabMembroFoto ou efetuar um open na tabela
exit;
end;
if Assigned(Foto.Picture) Then
begin
ShowMessage('Objeto da propriedade picture não foi instanciado');
// Solução , verificar como o componente instancia este objeto, em alguns casos isso é feito via bitmap
exit;
end;
Qualquer coisa estou a disposição,
Abraços
Gostei + 1
Clique aqui para fazer login e interagir na Comunidade :)