![]() |
TXMLDocument als result ausgeben
Hallo,
ich versuche gerade ein verändertes XML Dokument mithilfe des Results einer Funktion an eine Procedure zu übergeben.
Delphi-Quellcode:
Doch leider funktioniert dies nicht.
procedure aendere_XML(name: string);
var XML: TXMLDocument; begin XML.FileName := ExtractFileName(openDialog1.FileName); //mache etwas XML := generiere_neueXML(XML); XML.SaveToFile(name+'.xml'); end; function generiere_neueXML(XML: TXMLDocument): TXMLDocument; var XML_neu: TXMLDocument; begin //fülle xml result := XML_neu; end; Ich erhalte folgenden Fehler: EXMLDocError mit der Meldung 'Kein aktives Dokument' aufgetreten. Wenn ich die XML gleich in der funktion speichere klappt dies aber. Kann mir jemand sagen woran das liegt?
Delphi-Quellcode:
procedure generiere_neueXML(XML: TXMLDocument, name: string);
var XML_neu: TXMLDocument; begin //fülle xml -> ergibt xml_neu XML_neu.SaveToFile(name+'.xml'); end; |
AW: TXMLDocument als result ausgeben
![]() Zitat:
|
AW: TXMLDocument als result ausgeben
@ Günther: update ... möglicherweise hatte ich zu wenig informationen gegeben.
Ich erstelle keine neue xml, sondern erweitere eine vorhandene xml-datei |
AW: TXMLDocument als result ausgeben
Es geht um
Delphi-Quellcode:
XML_neu := TXMLDocument.Create;
XML_neu.Owner := ???? |
AW: TXMLDocument als result ausgeben
Ändere mal die Definitionen von der Klasse auf das Interface.
TXMLDocument -> IXMLDocument aus XMLIntf.pas. Einfach zu erzeugen durch newXMLDocument aus XMLDoc.pas. Ich habe noch nie direkt mit der XML-Klasse gearbeitet. Wahrscheinlich gibt sich bei dir irgendetwas selber frei? |
AW: TXMLDocument als result ausgeben
Ja, ich dachte das geht aus dem Hilfe-Zitat so hervor?
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:53 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz