Ir para conteúdo
  • Cadastre-se

dev botao

  • Este tópico foi criado há 1289 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Postado

Bom dia pessoal!

Estou enfrentando um problema de Access Violation, e vocês sabem que esses erros geralmente são chatos pra caramba de resolver...

Esse erro em questão está bem estranho, é um projeto que anteriormente era em Delphi 7, mas recentemente fiz a migração para o Seattle. O erro ocorre (onde consegui identificar) ao dar ".free" em um formulário, eu sigo aquela receitinha de bolo padrão p/ exibir novos formulários:

Application.CreateForm(TFormTeste, FormTeste);
FormTeste.ShowModal;
FormTeste.Free;

Estou tentando usar a Call Stack do Delphi para ver se encontro onde o problema realmente ocorre, mas não consigo, na janela da Call Stack aparece a mensagem "Process is not accessible", acredito que pelo fato do projeto ser originalmente de outro Delphi falta alguma configuração pra a Call funcionar no Seattle, alguém sabe como posso habilitar isso?

Ah, e se alguém já passou pelo mesmo problema no ".free" ou tiver alguma dica, agradeço muito!

Obrigado.

  • Moderadores
Postado

Duas dicas pra tentar ver

primeira dela é quanto a forma de criar o form, faça

FormTeste := TFormTeste.Create(Application ou nil);

 

a segunda é vá até a pasta onde está seu projeto, claro primeiro feche ele. dai faça backup ou exclu o arquivo *.dproj  e dai abra no delphi o *.dpr novamente.

e faça o teste

há se possível colocar aqui um aplicativo de teste ou um exemplo em anexo

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Transparent-02.png
 

 

Postado

Fiz esses testes que você propôs @Juliomar Marchetti, mas o problema persiste. E também o Call Stack não funcionou fazendo o processo de excluir .dproj para o Delphi recriar ele.

A única mudança foi que alterando a criação do form para a forma que você colocou ele não da o erro "A component named FormFrenteDeCaixa already exists" se eu tento abrir novamente o form logo em seguida. Porém o Acess Violation persiste.

Uma coisa que percebi, é que o Acess Violation não ocorre somente quando dou um ".free" no Form, ele ocorre em outros locais também, a impressão que da é que cada vez da em um local diferente, as vezes uma linha que deu o erro em uma tentativa passa sem problemas no próximo teste e o erro vai dar em outra linha diferente. Tá bem doidão, rs.

Fazendo os mesmos testes com esse sistema mas usando os fontes no Delphi 7 o problema não ocorre.

  • Este tópico foi criado há 1289 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.