Hallo!
MSXML scheint in der "Standardversion" nicht multithreading-fähig zu sein. Microsoft selbst sagt:
https://learn.microsoft.com/en-us/pr...65459(v=vs.85)
Diese Multithreading-Version wird aber in "
Xml.Win.msxmldom.pas" in Delphi nicht verwendet. Ich wusste mir nicht besser zu helfen, als eine Kopie davon in mein Projekt einzubinden und die "FreeThreadedDOMDocument-Version" dort als Erstes aufzuführen:
Delphi-Quellcode:
class constructor TMSXMLDOMDocumentFactory.Create;
begin
SetDOMDocumentCoClasses([CLASS_FreeThreadedDOMDocument60, CLASS_DOMDocument60, CLASS_DOMDocument40, CLASS_DOMDocument30,
//OMO added "CLASS_FreeThreadedDOMDocument60" at first position to use multithreaded version
CLASS_DOMDocument26,
Winapi.msxml.CLASS_DOMDocument]);
...
Oder gibt es eine bessere Möglichkeit?