Zitat von
himitsu:
hmmmm ... das TXMLDocument von Delphi kapselt eigentlich nur das im Windows installierte
MSXML.
TXMLDocument ist in der
unit XMLDoc deklariert, diese ist unabhängig vom DOMVendor. Welcher verwendet wird, hängt nur davon ab, welche
unit man zusätzlich einbindet: wenn man die
Unit msxmldom benutzt, registriert sich der
MSXML Parser. Bindet man oxmldom ein, der OpenXML Parser. Und mit xercesxmldom wird der Xerces Parser verwendet.
Die
IDE bevorzugt msxmldom, indem sie die
Unit msxmldom in die uses Liste einfügt, wenn man eine TXMLDocument Komponente auf ein Formular legt und dann kompiliert.
Wenn man ohne Formular arbeitet und die Komponente zur Laufzeit erzeugt, muss man neben XMLdoc.pas noch entweder msxmldom oder oxmldom oder xercesxmldom.pas einbinden.
Die
DOM Implementationen registrieren sich automatisch als
DOM Vendor (im initialization Abschnitt).
TXMLDocument ist sozusagen nur der abstrakte Container für eine der konkreten Implementierungen.