Delphi XE4 - XML - Assinatura

Delphi

04/12/2013

Olá, estou criando a mesma função no Delphi XE4, sem o uso do FireMonkey, porém, quando tento fazer a Assinatura do XML estou recebendo o seguinte erro "The signature property must be set before calling this method". O erro da na linha " AssinaturaXML.store := MemoriaStore;". O que poderia ser ?

Link original - Revista ClubeDelphi 139 - Parte 2 Clube Delphi 139
Thairony Holz

Thairony Holz

Curtidas 1

Melhor post

Flex Ltda

Flex Ltda

29/10/2014

Dae fera blza?

conseguiu resolver esse problema?
GOSTEI 1

Mais Respostas

Thiago Silva

Thiago Silva

04/12/2013

Tenho o mesmo problema, mas parece que ninguém nunca resolveu, não é? :-(
GOSTEI 0
Luiz Menin

Luiz Menin

04/12/2013

Tenta colocar as seguintes DLL's na pasta C:\Windows\System32:
- msxml2.dll
- msxml2r.dll
- msxml5.dll
- msxml5r.dll
- msxml6.dll
- msxml6r.dll
- Capicom.dll
Agora acesse o Prompt de Comando como Administrador e registre as dlls utilizando o comando "regsvr32".
GOSTEI 1
Thiago Silva

Thiago Silva

04/12/2013

Então, fiz isso e ainda continua dando o mesmo erro, nessa linda AssinaturaXML.store := MemoriaStore;
Erro:
The signature property must be set before calling this method
GOSTEI 0
Luiz Menin

Luiz Menin

04/12/2013

Você está chamando a função de selecionar o certificado antes de assinar?
Isso seria um "pré-requisito".
GOSTEI 0
Thiago Silva

Thiago Silva

04/12/2013

Sim, não alterei em nada o código do exemplo do site. Consigo escolher o certificado.
GOSTEI 0
Luiz Menin

Luiz Menin

04/12/2013

Eu já passei por esse erro, tenho certeza, pois essa mensagem não me é estranha.
Porém, não consigo lembrar o que foi feito para solucionar.
Peço desculpa pelos "chutes".
Assim que eu lembrar eu volto aqui...
GOSTEI 0
Thiago Silva

Thiago Silva

04/12/2013

Tudo bem amigo, enquanto isso vou pesquisar mais! obrigado pela ajuda.
GOSTEI 0
Rodrigo Traleski

Rodrigo Traleski

04/12/2013

Pessoal, alguém conseguiu resolver este problema? Estou usando o Delphi 7. Pelo oq consegui debugar o LoadXML do DocumentDOM não carrega nada. Por isso não consigo achar a tag signature. Deve ser o mesmo problema do colega. Estou usando o Windows 7 64 bits. Será que é este o problema?
GOSTEI 0
Diego Freitas

Diego Freitas

04/12/2013

Galera, alguém resolveu isso?! Estou com o mesmo problema até agora.
GOSTEI 0
Ronn

Ronn

04/12/2013

The postings on your site are always excellent. Thanks for the great share and keep up this great work! [url=http://fivenightsatfreddys-4.com/] five nights at freddy’s 4[/url]
GOSTEI 0
Diego Freitas

Diego Freitas

04/12/2013

Olá pessoal, estou com o mesmo problema dando "The signature property must be set before calling this method".
Alguém conseguiu resolver e pode me ajudar?
GOSTEI 0
Diego Freitas

Diego Freitas

04/12/2013

Pelo jeito estamos às moscas né?! Ninguém responde. Provavelmente perdemos nosso tempo assinando a DEV e lendo este artigo!
GOSTEI 0
Jonatas Alves

Jonatas Alves

04/12/2013

Olá,

Tive este mesmo problema, e descobri que o motivo do erro é alguma inconsistência na estrutura do arquivo '.xml' que foi submetido para análise.

por exemplo:

submeti um arquivo '.xml' cujo o nó 'infNFe' estava com esta string no valor aninhado:

Id="NFe3508059978"


ao executar a rotina 'AssinarNFe', foi apresentada esta mensagem

The signature property must be set before calling this method


posteriormente, submeti outro arquivo, porém neste o nó 'infNFe' apresentava o nó aninhado com a seguinte informação:

Id="NFe33170302241779000162550040000004801000004800"


ao executar a rotina 'AssinarNFe', o resultado foi um sucesso.

Conclusão:

o campo 'id=' tem que referenciar exatamente 47 caracteres, se este número variar, automaticamente ocorre o erro mencionado acima.

espero ter ajudado.
GOSTEI 0
POSTAR