Cita:
Empezado por Band
Hola keys, gracias por la respuesta.
Mi problema es que no puedo usar el Txmldocument de momento
No sé si es problema del Msxml2.DOMDocument.6.0, porque así Código Delphi [-]Documento.DocumentElement.ChildNodes[4].ChildNodes[1].Text;
tampoco consigo referenciarlo.
Seguiré investigando.
|
Aparte del código proporcionado por Keys, yo lo he conseguido de la siguiente manera (código Delphi 2007):
Código Delphi
[-]function BuscaSignatureValue(documento: IXMLDocument): string;
var ANode1: IXMLNode;
i: integer;
begin
result := '';
for i := 0 to documento.DocumentElement.ChildNodes.Count - 1 do
begin
if documento.DocumentElement.ChildNodes.Nodes[i].NodeName = 'ds:Signature' then
begin
ANode1 := documento.DocumentElement.ChildNodes.Nodes[i];
if ANode1.ChildNodes.FindNode('ds:SignatureValue') <> nil then
begin
result := ANode1.ChildNodes['ds:SignatureValue'].Text;
result := AnsiReplaceStr(result, #10, ''); result := Copy(Trim(result), 1, 100); break;
end;
end;
end;
end;
La solución de Keys es estupenda, pero con el inconveniente de que si en algún momento se cambia o se añade algún nodo en el fichero, va a dejar de ser funcional.