Jump to content

Delphi chamada_delphi.png acbr.png

C6 chamada_c6.png botao.png

Status de NF-e numa aplicação que é um serviço não encontra o certificado.


Edilberto de Sousa
Go to solution Solved by Edilberto de Sousa,
  • Este tópico foi criado há 178 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Estou com uma situação que o status da nfe não funciona numa aplicação que é um serviço do windows, mas funciona como uma aplicação normal. verifiquei que a variável ACertContext  da TDFeWinCrypt.CarregarCertificadoDeNumeroSerie está nil, mas não sei porque

para facilitar anexei os dois projetos que usei como teste. na pasta do projeto tem o arquivo AcbrConfiguracoes.ini onde tem as configurações do acbr que estou utilizando. esse arquivo deve ser copiado para a pasta do executável. na pasta do executável é gerado um arquivo de log (log.txt)

teste acbr projetos.zipnão vou anexar as dll e nem os Schemas para não exceder o limite do arquivo.

retorna o erro : WebService Consulta Status serviço: 
- Inativo ou Inoperante tente novamente.
Certificado Série: "7E5021021965AABC", não encontrado!

estou usando o delphi Seattle, SSLLib libWinCrypt

Link to comment
Share on other sites

  • Consultores

permissões do serviço nem tudo tem acesso livremente

também coinitialization

Consultor SAC ACBr Juliomar Marchetti
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Black-02.png
Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil

 

Link to comment
Share on other sites

4 minutos atrás, Juliomar Marchetti disse:

talvez esteja faltando . pode ser

esse é o código:

procedure TDFeWinCrypt.CarregarCertificadoDeNumeroSerie;
var
  ACertContext: PCCERT_CONTEXT;
begin
  ACertContext := Nil;
  OpenSystemStore;
  ACertContext := CertEnumCertificatesInStore(FpStore, ACertContext^);
  while (ACertContext <> nil) and (FpCertContext = nil) do
  begin
    if (GetSerialNumber(ACertContext) = FpDFeSSL.NumeroSerie) then
      FpCertContext := ACertContext
    else
      ACertContext := CertEnumCertificatesInStore(FpStore, ACertContext^);  // Pega o próximo
  end;

  if (FpCertContext = Nil) then
    raise EACBrDFeException.Create('Certificado Série: "'+FpDFeSSL.NumeroSerie+'", não encontrado!');
end;
 

ficaria como ?

Link to comment
Share on other sites

  • Consultores

mas não é o componente o problema

é sua aplicação

Consultor SAC ACBr Juliomar Marchetti
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Black-02.png
Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil

 

Link to comment
Share on other sites

  • Consultores

Obrigado por reportar.

Fechando. Para novas dúvidas, criar um novo tópico.

Consultor SAC ACBr

Victor H Gonzales - Pandaaa
Ajude o Projeto ACBr crescer - Assine o SAC

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

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil

Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

"Aprender é a única coisa que a mente nunca se cansa, nunca tem medo e nunca se arrepende” - Leonardo da Vinci

"Ter sucesso é falhar repetidamente, mas sem perder o entusiasmo"

Link to comment
Share on other sites

  • Este tópico foi criado há 178 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.