![]() |
Msxml
Moin Zusammen,
ich habe mal wieder ein Problem: Ich habe ein Proggi geschrieben welches eine XML einliest bearbeitet und speichert. Auf meinem PC läuft alles. Jetzt gehe ich an einen Anderen Rechner und es geht net mehr! Ich bekomme entweder (in der Konsole) die Fehlermeldung "DomParserError: Gerät nicht bereit" oder auf noch ein anderen PC "DomParserError: Das System kann den Angegebenen Pfad nicht Finden". Ich verwende das IXMLDocument:
Code:
Ich bin am Verzweifeln! Hat jemand eine Idee?
var XMLFile: IXMLDocument;
begin XMLFile:= newXMLDocument; XMLFile.LoadfromFile(...); XMLFile.active:= true XMLFile.documentelement.childnodes[1]... XMLFile.saveToFile(...); end; |
AW: Msxml
Hast du vielleicht die Pfadangabe vergessen? Nur ein Dateiname funktioniert logischerweise nicht.
|
AW: Msxml
wie meinst du das?
Code:
var
XmlFile: IXMLDocument; i,a:Integer; begin XmlFile:= newXMLDocument; CopyFile('D:\Werke\GUI\XML-Gen\Templates\uav1.xtop','D:\Werke\GUI\XML-Gen\Outputs\uav1.xtop',not true); WriteLn('Load File'); XMLFile.LoadFromFile('D:\Werke\GUI\XML-Gen\Outputs\uav1.xtop'); WriteLn('Activate XMLDoc'); XMLFile.Active:= true; writeln('Writing uav1.xtop'); for I := 1 to Length(input_csv)-1 do begin XMLFile.DocumentElement.ChildNodes['tns:types'].ChildNodes[0].AddChild('tns:variable'); XMLFile.DocumentElement.ChildNodes['tns:types'].ChildNodes[0].ChildNodes[I-1].SetAttributeNS('name','',input_csv[I ,2]); XMLFile.DocumentElement.ChildNodes['tns:types'].ChildNodes[0].ChildNodes[I-1].SetAttributeNS('type','',input_csv[I ,0]); end; {...} XMLFile.SaveToFile('D:\Werke\GUI\XML-Gen\Outputs\uav1_som.xml'); WriteLn('uav1_som.xml has been written'); WriteLn('Ready'); end; |
AW: Msxml
Stehen da wirklich hartkodierte Pfade in Deinem Quelltext?
BTW: "not true" hab ich so noch nie gesehen :) |
AW: Msxml
die pfade setze ich in einer conf datei .. ich wollte sie hier nicht auch noch posten :D
not true .. ich weis das ist wenn man müde ist :P aber woher kommen die Fehler? |
AW: Msxml
Ist die kopierte Datei auch tatsächlich vorhanden? Ich würde einmal den Rückgabewert von CopyFile prüfen.
|
AW: Msxml
jap ist sie sie liegt schon im ordner :D
Aber es würde ja so nen fehler geben beim laden .. |
AW: Msxml
In welcher Zeile passiert der Fehler? Ohne mit MsXml gearbeitet zu haben, vermute ich, dass
Delphi-Quellcode:
den Fehler bringt. Vllt, weil die Installation der IE-Sachen anders/nicht erfolgt ist. Kann man das mit
XmlFile:= newXMLDocument;
Delphi-Quellcode:
prüfen?
Assigned
|
AW: Msxml
wie meinst du das mit assign?
|
AW: Msxml
Liste der Anhänge anzeigen (Anzahl: 1)
Nein, das geht problemlos.
Ich vermute, dass der Zielpfad nicht existiert oder so etwas. Schau am besten kurz in den Process Monitor, dann siehst du ja wo der Zugriff schiefgeht. Das sieht dann z.B. so aus: Anhang 36237 Das Verzeichnis Tempd existiert bei mir nicht, daher der Fehler. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:39 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 by Thomas Breitkreuz