Einzelnen Beitrag anzeigen

creehawk

Registriert seit: 1. Jul 2013
Ort: Hamburg
241 Beiträge
 
Delphi 10.4 Sydney
 
#1

Mehrere EDomParseError einfangen

  Alt 8. Nov 2018, 16:23
Moin Moin.

XML > XSD parsen.
Code:
function Validate_XML(xmlFile:String): Boolean;
var
  XMLDocument: TXMLDocument;
  T0,T1,T2,T3,T4:String;
begin
  XMLDocument := TXMLDocument.Create(nil) ;
  XMLDocument.ParseOptions := [poResolveExternals, poValidateOnParse];
  Result := True;
    try
      XMLDocument.LoadFromFile(xmlFile) ;
      XMLDocument.Active := true;
    except
      on E: EDomParseError do
        begin
          If E.ErrorCode = -2146697210 then
          begin
            Application.MessageBox(Pchar(E.Message),Pchar('Validierungsfehler'),16);
          end;
        end;
    end;
end;
Beim auftreten eines EDomParseErrors bricht der Parser ab und Schluß. Eine Fehlermeldung (Reason/Message) gibt es auch, nett.

Ich konnte jetzt nichts finden um mehrere Fehler zu sammeln, damit man die Fehlermeldungen speichern und anschließend abarbeiten kann. Gibt es das nicht? MultipleParseError meine ich mal gelesen zu haben.

Oder gibt's einen Tipp wie man das machen könnte? Auf extra Komponenten oder Erweiterungen würde ich gerne verzichten.

creehawk
  Mit Zitat antworten Zitat