2008/10/27 Eduardo Melo <[EMAIL PROTECTED]>:
> Estou tentando gravar um log de erros do sistema e criei no menu principal
> uma procedure CapturaErro (Sender: TObject; E: Exception); e chamo a mesma
> no evento oncreate do formulário Principal.
>
> Porem eu estou abrindo um outro formulário (ex: empresa) com o ShowModal (já
> tentei apenas Show tb) e quando clico no botão Sair coloquei o comando
> Close; e Free;
>
> Porem ele me retorna o seguinte erro: Project MB_Banca.exe raised exception
> class EAbstractError with message 'Abstract Error'

Você está tentanto executar um método abstrato:

TExemplo = class
public
  procedure metodo; virtual; abstract;
end;

...

var
  VExemplo: TExemplo;
begin
  VExemplo := TExemplo.Create;
  try
    VExemplo.metodo;
  finally
    VExemplo.Free;
  end;
end;

Para descobrir quem é este um, basta ligar informações de debug de
todo o projeto, inclusive componentes de terceiros, e chamar um call
stack (Ctrl+F3) no momento em que a exceção ocorrer.

Joao Morais

Responder a