Ir para conteúdo
  • Cadastre-se

dev botao

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

Recommended Posts

Postado

Boa tarde

Aproveitando o tópico, também estou tendo o retorno "Certificado Digital Não Encontrado".

Tentei a dica do colega Tiago, mas não obtive sucesso.

NFe1.Configuracoes.Certificados.NumeroSerie := Trim(UpperCase(nserie));
NFe1.SSL.CarregarCertificado;

Ao carregar o certificado, ele acusa a ausência do certificado.

No componente eu tenho pré-configurado os seguintes elementos:

PathNfe = C:\SGA\NFe
PathSchemas = C:\SGA\Schemas\
SSLLib = libCapicom
VersaDF = ve310

Existe algo mais a ser configurado ?

 

Grato pela atenção.

Postado (editado)

Boa tarde TurboOverdrive, tente ao debugar verificar o valor contido em nserie após o Trimm e o uppercase... creio que seja necessário um

Trim(UpperCase(StringReplace(nserie, ' ', '', [rfReplaceAll])));

 

Outra coisa não precisei chamar SSL.CarregaCertificado apenas configurei o numeroserie no componente

 

veja se isso te ajuda :)

Editado por Tiago Ravache
erros de digitação
Postado

Eu já havia tentado o comando que você utilizou, mas mesmo assim não deu certo.

NFe1.Configuracoes.Certificados.NumeroSerie := Trim(UpperCase(StringReplace(nserie, ' ', '', [rfReplaceAll])));
dtfim := NFe1.SSL.CertDataVenc;

O certificado está funcional, mas ao chamar a função que lê a data de expiração, aparece o mesmo retorno "Certificado Digital Não Encontrado". Já registrei as dlls, inclusive deixei cópias no mesmo diretório da aplicação e no diretório SysWow64.

Consegui compilar o exemplo do Acbr, mas ele apenas abre e fecha no mesmo instante.

Vale salientar que a minha aplicação com a versão anterior, usando o trunk, consegue identificar o certificado. Assim descartamos a hipótese de ser Windows ou o certificado.

O que eu posso estar esquecendo que seja diferente nessa versão Trunk2 ?

Grato pela atenção.

Postado

Boa tarde

Grande Tiago, você acertou em cheio.

Assim estava o código na linha 225 da ACBrDFeCapicom.pas:

if Cert.SerialNumber = FpDFeSSL.NumeroSerie then

O valor de Cert.SerialNumber estava indo maiúsculo e sem espaços e o valor de FpDFeSSL.NumeroSerie estavam todos em minúsculo.

Assim ficou o código na mesma unit:

if Cert.SerialNumber = Trim(UpperCase(FpDFeSSL.NumeroSerie)) then

Dessa forma o certificado foi encontrado sem nenhum problema. O interessante é que atualizei os meus fontes Acbr na quinta-feira passada, 27/08/15.

Agradeço novamente aos colegas do fórum e desculpas pelo incômodo.

  • Curtir 1
  • 3 meses depois ...
Postado

no evento oncreate do Tform1 no acbrnfe_demo basta desabilitar essas 2 linhas que vai rodar legal sem precisar mexer no codigo fonte 

//  For T := Low(TSSLLib) to High(TSSLLib) do
//    cbTipoEmissao.Items.Add( GetEnumName(TypeInfo(TSSLLib), integer(T) ) ) ;

  • 1 ano depois...
Postado
Em 10/12/2015 at 01:27, saverio disse:

no evento oncreate do Tform1 no acbrnfe_demo basta desabilitar essas 2 linhas que vai rodar legal sem precisar mexer no codigo fonte 

//  For T := Low(TSSLLib) to High(TSSLLib) do
//    cbTipoEmissao.Items.Add( GetEnumName(TypeInfo(TSSLLib), integer(T) ) ) ;

nessa nova versão é a mesma coisa ?

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

The popup will be closed in 10 segundos...