Ir para conteúdo
  • Cadastre-se

dev botao

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

Recommended Posts

Postado

Depois que eu atualizei o ACBR (anteontem), ao fazer

ACBrNFe.WebServices.StatusServico.Executar;

apresenta a mensagem

Access Violation at address 750F062C in module 'crypt32.dll'. Read of address 0000000C.

Isto acontece em qualquer computador. Alguém está enfrentando esta situação?

Postado

Achei onde é o problema. É no:

C:\ACBr\Fontes\ACBrDFe\ACBrDFeCapicomDelphiSoap.pas
TDFeCapicomDelphiSoap.OnBeforePost

Para resolver a questão da NFS-e, precisa ser retirado o IF desta procedure, senão apresenta o erro "Erro ao ajustar INTERNET_OPTION_CLIENT_CERT_CONTEXT: 12046".

Fazendo isso, resolve o problema da NFS-e, mas acontece o erro na NF-e do crypt32.dll mencionado acima.

Se arrumo uma coisa, estrago a outra... Preciso que os dois funcionem... Alguma solução por aí?

 

Consegui resolver! Agora funciona para NF-e e para NFS-e. Entre colchetes tem o código anterior, subtituído pela linha acima. Tem que ficar exatamente assim... Será que dá para inserir esta alteração diretamente nos fontes do ACBR?

C:\ACBr\Fontes\ACBrDFe\ACBrDFeCapicomDelphiSoap.pas

TDFeCapicomDelphiSoap.OnBeforePost

  with FpDFeSSL do
  begin
    if (UseCertificateHTTP) then
    begin
      CertContext := Certificado as ICertContext;
      CertContext.Get_CertContext(HCertContext);

      InternetSetOption(Data, INTERNET_OPTION_CLIENT_CERT_CONTEXT, Pointer(HCertContext), SizeOf(CERT_CONTEXT));
      {
      if not InternetSetOption(Data, INTERNET_OPTION_CLIENT_CERT_CONTEXT,
        Pointer(HCertContext), SizeOf(CERT_CONTEXT)) then
        raise EACBrDFeException.Create('Erro ao ajustar INTERNET_OPTION_CLIENT_CERT_CONTEXT: ' +
                                       IntToStr(GetLastError));
      }
    end;

  • Este tópico foi criado há 3108 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.