Ir para conteúdo
  • Cadastre-se

dev botao

Access Violation ao abrir demo


Ver Solução Respondido por João Alberto Amaral,
  • Este tópico foi criado há 2197 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Postado (editado)

Olá!

Eu copiei o demo de NFSe para o PC de um cliente e tentei abrir para fazer os testes de configuração. Porem, ao tentar abrir o demo já aparece logo o erro abaixo:

Citar

---------------------------
Application Error
---------------------------
Exception EAccessViolation in module Demo_ACBrNFSe.exe at 0068107F.
Access violation at address 00A8107F in module 'Demo_ACBrNFSe.exe'. Read of address 00000000.

---------------------------
OK   
---------------------------
 

Eu copiei TODAS as DLLs para o diretório C:\Windows\System32 e o erro ainda persiste. 
OBS: o computador roda Windows 7 de 32bits.

O que pode estar acontecendo?

 

Editado por Claytonocn07
  • Consultores
Postado

Debugando, em qual momento aparece o erro?

[]'s

Consultor SAC ACBr

Elton
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.
Postado

Olá Italo!

Na dúvida eu copiei todas as DLLs da pasta DLLs do exemplo do ACBr. 

Mas eu não coloquei na mesma pasta do executável. Eu coloquei na pasta C:\Windows\System32. O sistema é Widows 7 de 32 bits.

Eu coloquei lá somente as DLLs, sem as pastas, diretamente em System 32.

Postado

Ítalo,

Eu já tentei das duas formas: copiando para a pasta System 32 e depois da sua sugestão eu copiei para a mesma pasta do executável. Continua dando o mesmo erro. 

Eu já testei tanto neste PC que é 32 bits quanto em outro de 64 bits, porém no de 64 bits eu copiei as DLLs para a pasta SysWOW64

Todos estes testes deram o mesmo erro de AccessViolation

 

Meu colega de trabalho configurou uma máquina virtual no Virtual Box e colocou lá os mesmos arquivos e funcionou perfeitamente. 

Alguma ideia do que seja?

 

Estou quase decidido a colocar meu sistema para rodar em uma máquina virtual no PC do cliente.

  • Consultores
Postado

Boa tarde Clayton,

Depois que você copiou as DLLs para a pastas do executável removeu da pasta System?

Pode ser que tenha alguma DLL (desatualizada) perdida que a sua aplicação ou o Windows esteja usando em vez da correta.

  • Curtir 2
Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / Araraquara-SP

Araraquara - A era dos Trólebus

Postado

Ítalo

Eu tive acesso a outro PC da empresa e mudei a estratégia: Eu apenas abri o Demo sem copiar as DLLs. Desta vez não deu Access Violation.

Ao invés disso ele informou que estava faltando uma DLL (obviamente). Então eu fui copiando uma a uma as DLLs que ele pedia. Quando eu copiei a DLL libiconv-2.dll da pasta "DLLs\XMLSec\MinGW\32" ele voltou a apresentar o Access Violation. Ou seja, o erro é na hora que o demo vai executar algum método desta dll. Talvez a versão dela não seja a correta. Eu baixei da internet várias versões diferentes dela mas deu o mesmo erro. 

Também li o artigo da página http://www.projetoacbr.com.br/forum/topic/34177-acbrdfe-com-openssl-e-suporte-a-tls12/ que foi sugerido no arquivo "leiame.txt" mas não entendi bem como proceder.

 

Com estas informações, ficou mais fácil de você ou alguém me ajudar a mostrar onde eu estou errando?

Agradeço desde já a ajuda e a paciência de todos.

Postado
1 minuto atrás, Juliomar Marchetti disse:

Ainda faltam dll do ACBr.

usou o instalador para instalar o ACBr?

executou  ele como administrador? marcou a opção de copiar todas as dll?

Olá Juliomar!

Eu não usei o instalador, pois estou tentando rodar o demo em ambiente de produção no PC de um cliente, não na minha máquina de desenvolvimento. No meu PC está tudo ok. Eu simplesmente copio a pasta do demo com as DLL, o arquivo Cidades, etc para o PC do cliente.

Eu quero testar as configurações através do demo no Pc do cliente para depois fazer estas mesmas configurações no meu próprio programa.

Eu já havia feito isso em outro cliente e deu certo, mas desta vez está dando problema.

Curiosamente, o cliente onde deu certo usa certificado A1 e este onde está dando erro usa A3. Será que algum arquivo do programa de configuração do A3 está conflitando com esta dll?

  • Curtir 1
Postado
Em 14/11/2018 at 18:59, Amarildo de Matos disse:

opa..faça o seguinte.. faça o que o Juliomar falou..

faça  a instalacao do acbr, pelo instalador..

blz

Olá!

Para usar o instalador no PC de produção do meu cliente eu terei que instalar o Delphi nele?

Postado

Outra dúvida:

 

Eu percebi que o access violation era em uma dll específica. Eu baixei ela da internet e o programa passou a pedir outras dlls, as quais eu fui pegando uma a uma da pasta DLL do ACBr. Porém agora ele passou a pedir uma dll chamada MSVCR70.DLL que não consta na pasta DLL do ACBr. Eu já baixei umas 20 dlls em sites diferentes e nenhuma serviu, pois fica dando Access Violation.

 

O que me deixa encucado é que em outro cliente eu fiz da seguinte forma: copiei o demo para o PC do cliente e todas as DLLs para a pasta System32 e o programa abriu normalmente. Já neste outro cliente eu estou com esse problema já faz uns 10 dias. Eu já tentei em 3 computadores lá e dá o mesmo erro.

OBS: neste cliente há um proxy configurado na internet. Tem alguma coisa a ver? O demo usa a internet no momento em que está sendo aberto?

6 minutos atrás, Amarildo de Matos disse:

bom dia..

nao precisa.. apenas instale o acbrmonitor..

 

Amarildo, muito obrigado por estar me ajudando...

Eu sou programador Delphi há 17 anos, mas nunca precisei fazer programas fiscais, por isso sou muito novato neste assunto. ACBr é novidade pra mim.

Me diz mais uma coisa: onde fica o instalador do ACBr monitor? 

Mais uma vez, obrigado.

  • Membros Pro
  • Solution
Postado

Olá !

Também tive este mesmo tipo de problema “Access violation at address  ...” na abertura de meus programas que usam o ACBR. Mas para encurtar a mensagem já adianto, oque resolveu foi o cliente formatar a máquina, depois do Windows zerado tudo funcionou normalmente!

Oque me levou a esta conclusão foi que no ambiente de desenvolvimento Windows 10 funcionava 100 % sem erro algum. Já nos clientes alguns com Windows Vista, Windows7, Windows10 rodava tranquilo igual ao meu ambiente de desenvolvimento (até no Windows XP rodou sem problemas). Porem em 2 ou 3 clientes dava o erro.

Uso Delphi XE7 original e tive problema!

  • Curtir 2
Postado
Em 20/11/2018 at 11:13, João Alberto Amaral disse:

Olá !

Também tive este mesmo tipo de problema “Access violation at address  ...” na abertura de meus programas que usam o ACBR. Mas para encurtar a mensagem já adianto, oque resolveu foi o cliente formatar a máquina, depois do Windows zerado tudo funcionou normalmente!

Oque me levou a esta conclusão foi que no ambiente de desenvolvimento Windows 10 funcionava 100 % sem erro algum. Já nos clientes alguns com Windows Vista, Windows7, Windows10 rodava tranquilo igual ao meu ambiente de desenvolvimento (até no Windows XP rodou sem problemas). Porem em 2 ou 3 clientes dava o erro.

Uso Delphi XE7 original e tive problema!

Obrigado joão Alberto pela ajuda

Eu segui sua dica e deu certo, porém de uma forma diferente:

Eu percebi que todas as máquinas que o demo não funcionou rodavam windows 7. Então eu pedi pra formatarem o PC colocando Windows 10, mas a empresa não quis mudar o S.O, então eu criei uma máquina virtual com windows 10 e coloquei o demo com as dlls. Abriu de primeira!

 

  • Curtir 2
  • Este tópico foi criado há 2197 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Visitante
Este tópico está agora fechado para novas respostas
×
×
  • 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.