EAccessViolation
É o seguinte: fiz um browser que salvava no registro do windows dados como a página principal escolhida. Mas acabou aparecendo uma mensagem de erro com esse nome aí de cima. Tirei as linhas que gravavam os dados no registro mas o erro continuou aparecendo sempre quando o browser era fechado. O que eu faço pra acabar com essa mensagem chata ?
PS: o programa criava uma chave no registro para salvar os dados. Ele não utilizava as chaves do IE.
PS: o programa criava uma chave no registro para salvar os dados. Ele não utilizava as chaves do IE.
Glaubergs
Curtidas 0
Respostas
Alex.costa
12/10/2003
Glauber,
EAccessviolation é um erro gerado quando um programa tenta acessar memória alocada para um objeto que não mais existe.
Por exemplo, se eu tenho o código
Objeto = TObject.Create;
Objeto.QualquerMetodo;
Objeto.Free;
Objeto.QualquerPropriedade := Valor; // nesta linha o Delphi vai me retornar um access violation ja que eu ja destrui o Objeto.
Então, verifique no seu programa se não existe nenhuma referencia no fim do programa a um objeto que ja tenha sido destruido.
Espero ter ajudado
EAccessviolation é um erro gerado quando um programa tenta acessar memória alocada para um objeto que não mais existe.
Por exemplo, se eu tenho o código
Objeto = TObject.Create;
Objeto.QualquerMetodo;
Objeto.Free;
Objeto.QualquerPropriedade := Valor; // nesta linha o Delphi vai me retornar um access violation ja que eu ja destrui o Objeto.
Então, verifique no seu programa se não existe nenhuma referencia no fim do programa a um objeto que ja tenha sido destruido.
Espero ter ajudado
GOSTEI 0
Beppe
12/10/2003
Objeto = TObject.Create;
Objeto.QualquerMetodo;
Objeto.Free;
Objeto.QualquerPropriedade := Valor; // nesta linha o Delphi vai me retornar um access violation ja que eu ja destrui o Objeto.
Dificilmente o erro ocorrerá nesta linha, pq AV geralmente eh retardado...
AVs tb acontecem quando sequer o obj foi criado:
var S: TStream; begin S.Seek(0, soFromEnd); ...
Ataliba
GOSTEI 0