Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
E aí galera beleza?
eis o seguinte, estou com essa mensagem de erro sempre que tento executar um robô:
"Access violation at address 00472D04 in module 'Robo.exe. Write of address 00000034."
Ele já foi compilado uma vez e roda perfeitamente, não mudei absolutamente nada no código e compilei denovo e nada.
Com receio de ser algum problema na instalação do Delphi, rodei em outra máqui também e nada, sempre o mesmo erro,
já conferi e reconferi o código todo e não há nada de errado, alguém poderia me dizer do que pode se tratar esse erro? Pressuponho que alguém já tenha passado por isso neh.
valeu!!!
Cheguei a ebugar as threads mas não apontou mais nenhum detalhe sobra os erros.
A questão é: em que momento ocorre um erro? Você falou que usa threads... está controlando para que elas não ocupem toda a memória disponível do pc?? Pois geralmente este erro ocorre por tentar ou acessar um objeto não instânciado/criado ou uma posição de memória inválida.
Por exemplo.... suponha que tenha um array com 10 elementos de espaço e tente ler o 11... vai dar erro de access violation.
É bom debugar bem o código para identificar em que momento ocorre o erro para então poder tentar tratar... uma dica que tirei do fórum do ActiveDelphi, deste tópico:
Caso queira saber onde exatamente esta o erro faz assim:
quando der o erro você entra no delphi com o programa rodando vai em search -> find error e coloca o valor do erro, no seu caso 00472D04, se caso o processo estiver rodando ele vai na linha exata do erro, caso contrário ele vai dar a mensagem de que o processo não esta rodando, ja foi destruido.
[]'s
Fiz o que você me falou e achou o seguinte:
TExtraHost.SetEmulator:
00472D04 885034 mov [eax+$34], dl
só que não consegui achar a linha e não consigo ver onde está esse TExtraHost, não achei em nenhum dos arquivos do projeto.
O que eu consegui foi apenas encontrar a declaração ExtraHost lá no uses e a linha "Aplication.Run" marcada de vermelho.
Esse TExtraHost está parecendo uma chamada a algum módulo ou dll de programa... provavelmente alguma classe compilada por terceiros.... o sistema todo foi você que escreveu ou pegou agora pra dar suporte?
Peguei para dar suporte agora.
Ele lê telas de mainframe e joga esses dados em um banco de dados, talvez esse TExtraHost seja alguma coisa relacionada a isso.
Só que não achei essa classe em arquivo nenhum, nem os do projeto e nem os importados pelo projeto.
Já fez um debug no seu código para ver em que momento este erro acontece?