Ir para conteúdo
  • Cadastre-se

dev botao

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

Recommended Posts

Postado

Bom dia pessoal. Estou tentando utilizar a classe TDFeSSL isoladamente, sem o acbrnfe...mas na hora de assinar um documento, está me retornando "classe não registrada".

Eu estou criando o componente e preenchendo algumas variáveis para utilizar o mesmo, olhei a criação e utilização do mesmo pelo acbrnfe demo. Mas ainda não consegui fazer funcionar. Eu estou criando da seguinte forma: 

 

function Assinar(const ConteudoXML, docElement, infElement: string; SignatureNode, SelectionNamespaces, IdSignature, SerialNumber: string): string;
var
  DFeSSL: TDFeSSL;
  XMLUTF8: AnsiString;
begin
  try
    DFeSSL := TDFeSSL.Create;
    DFeSSL.NumeroSerie := SerialNumber;
    {$IFDEF CAPICOM}
    DFeSSL.SSLCryptLib := cryCapicom;
    {$ELSE}
    DFeSSL.SSLCryptLib := cryWinCrypt;
    {$ENDIF CAPICOM}
    XMLUTF8 := ConverteXMLtoUTF8(ConteudoXML);
    DFeSSL.SSLXmlSignLib := xsMsXml;
    DFeSSL.SSLType := LT_all;
    Result := DFeSSL.SSLXmlSignClass.Assinar(String(ConteudoXML), docElement, infElement,
      SignatureNode, SelectionNamespaces, IdSignature);
  finally
    if Assigned(DFeSSL) then
      DFeSSL.Free;
  end;
end;

Falta allguma variável a ser preenchida?

  • Fundadores
Postado

A mensagem pode ser a falta de registro da MSXML5... A Capicom é utilizada para acesso a certificados, mas é a msxml5.dll quem faz as transformações do XML, e a assinatura digital...

Ou seja, falta registrar a msxml5.dll

Se você usar a libOpenSSL, ela usará as bibliotecas da XMLSec para manipulação do XML...

Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

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

Postado
10 minutos atrás, Daniel Simoes disse:

A mensagem pode ser a falta de registro da MSXML5... A Capicom é utilizada para acesso a certificados, mas é a msxml5.dll quem faz as transformações do XML, e a assinatura digital...

Ou seja, falta registrar a msxml5.dll

Se você usar a libOpenSSL, ela usará as bibliotecas da XMLSec para manipulação do XML...

Eu não to usando a openssl...pq se eu coloco ela no projeto ele nem executa...então eu fui lá no acbr.inc e tirei o ponto nesse código:

{$DEFINE DFE_SEM_OPENSSL}

vou tentar registrar a DLL pra ver oq dá...mas eu preciso da openssl??

deu esse erro ao registrar a msxml5.dll:

 

Sem título.png

  • Fundadores
Postado
17 minutos atrás, Wendel Fassarella disse:

vou tentar registrar a DLL pra ver oq dá...mas eu preciso da openssl??

Se vc não configurar para usar OpenSSL, então não precisa das DLLs do OpenSSL...

17 minutos atrás, Wendel Fassarella disse:

deu esse erro ao registrar a msxml5.dll:

Desculpe, mas essa DLL não é do ACBr...

Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

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

Postado
Em 10/07/2017 at 11:11, Daniel Simoes disse:

Se vc não configurar para usar OpenSSL, então não precisa das DLLs do OpenSSL...

Desculpe, mas essa DLL não é do ACBr...

cara....eu tô tentando usar em 64 bits...o que eu preciso pra fazer funcionar igual no 32 usando a wincrypt

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