Ir para conteúdo
  • Cadastre-se

dev botao

NFe Selecionar certificado Digital


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

Recommended Posts

Postado

Prezado colegas da ACBr, bom dia!

Por favor alguém poderia me dar um help?   

Estou com o seguinte erro: "DadosPFX, ArquivoPFX, URLPFX ou NumeroSerie não especificados !"

Segue abaixo o código fonte.
Por favor alguém poderia me dar um help onde no código abaixo estou errando?
Desde já agradeço. Obrigado.


procedure TFTestaCertificadoDigital.spbtnSelecionaClick(Sender: TObject);
var
   A: TDFeSSL;
   I: Integer;
   xmlSig: TDFeSSLXmlSignClass;
   xmlOr: TStringList;
   xmlAs: TStringList;
   XMLAss, ArqXML: string;
begin
     A := TDFeSSL.Create;
     A.SSLCryptLib := cryWinCrypt;
     A.SSLXmlSignLib := xsLibXml2;
     A.SSLType := LT_TLSv1_2;
     A.SSLDgst := dgstSHA256;
     A.SelecionarCertificado;

     //Mover os dados do Certificado para os Label´s
     MoveLabel;
     
     try
       ShowMessage ('Certifivado Digital carregado com sucesso.');
     finally
       
     end;
     A.Free;
end;

procedure TFTestaCertificadoDigital.MoveLabel;
begin
     //Numero de Série do Certificado
     Label3.Caption := ACBrNFe1.Configuracoes.Certificados.NumeroSerie;

     //Nome do Certificado
     Label5.Caption := (ACBrNFe1.SSL.CertSubjectName + sLineBreak + sLineBreak +
                        'Razão Social: ' + ACBrNFe1.SSL.CertRazaoSocial);

     //Subject Name
     Label7.Caption := (ACBrNFe1.SSL.CertSubjectName);

     //CNPJ
     Label9.Caption := ACBrNFe1.SSL.CertCNPJ;
     
     //Emissor
     Label13.Caption := ACBrNFe1.SSL.CertCertificadora;

     //Validade
     Label3.Caption := (DateTimeToStr(ACBrNFe1.SSL.CertDataVenc));

     //Certificado
     Label15.Caption := ACBrNFe1.SSL.CertIssuerName;

    
     //Verifica se o Certificado esta instalado e se sim a validade
     try
        //if ACBrNFe1.Configuracoes.Certificados.GetCertificado.PrivateKey.IsHardwareDevice = False then
        if ACBrNFe1.SSL.SelecionarCertificado.PrivateKey.IsHardwareDevice = False then

     except
        ShowMessage('ERRO: "Certificado Digital" selecionado NÃO ENCONTRADO ou NÃO INSTALADO.' +#13+
                    'Favor entrar em contato com o "Suporte do emissor do Certificado Digital" para solucionar o problema.');
     end;
     //VER VALIDADE DO CERTIFICADO
     //if ACBrNFe1.Configuracoes.Certificados.DataVenc < date then

      if ACBrNFe1.SSL.CertDataVenc < date then

     ShowMessage('ERRO: O "Certificado Digital" ESTÁ VENCIDO.' +#13+
                 '      Venceu em: '+ DateTimeToStr(ACBrNFe1.SSL.CertDataVenc) +#13+
                 '      Favor RENOVAR o seu "Certificado Digital".');
     //AVISO DE VENCIMENTO DO CERTIFICADO COM 30 DIAS ANTES
     if (Date - 30) < ACBrNFe1.SSL.CertDataVenc then
     ShowMessage('ALERTA: O "Certificado Digital" vencerá em: ' +
                  DateTimeToStr(ACBrNFe1.SSL.CertDataVenc) +#13+
                 '        Providenciar a RENOVAÇÃO do seu "Certificado Digital".' +#13+
                 '        Após a instação, alterar no "Cadastro da Empresa", o "Número de Série" e "Senha" do novo "Certificado Digital".');
end;

  • Administradores
Postado

Bom dia.

Você chegou a estudar os demos do componente?

Att.

Consultora SAC ACBr

Juliana Tamizou

Gerente de Projetos ACBr / Diretora de Marketing AFRAC
Ajude o Projeto ACBr crescer - Seja Pro

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 !!

  • Moderadores
  • Solution
Postado
9 horas atrás, w0000 disse:

     A.SelecionarCertificado;

     //Mover os dados do Certificado para os Label´s
     MoveLabel;

Creio que nesse trecho falta transferir o número de série do certificado selecionado para o objeto ACBrNFe1.

ACBrNFe1.Configuracoes.Certificados.NumeroSerie := A.NumeroSerie;

Equipe ACBr BigWings
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

 

 

Postado

Prezados, agradeço a atenção.

 

Conforme orientado pelo BigWings, acrescentei a linha

A.SelecionarCertificado;
ACBrNFe1.Configuracoes.Certificados.NumeroSerie := A.NumeroSerie;

Ainda estou com um erro: "CarregarCertificadoDeNumeroSerie" não suportado em: TDFeSSLCryptClass.

Por favor, será que alguém poderia me dar um help?

Desde já agradeço. Obrigado.

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