Delphi 2006 - msxml: What version of msxml does the vcl consume?

Specifically, if msxml 4 is not present on the system, and msxml 6 is present, will the Delphi msxml component (in Delphi 2006) use msxml 6?

Upvotes: 1

Views: 225

Answers (2)

It is not possible to test on a machine with only msxml6, because even Windows10 installs out of box with msxml3 and msxml6 present.

Upvotes: 0

paulsm4
paulsm4

Reputation: 121689

Q: Why don't you try it?

I presume you mean the Delphi class TXmlDocument and friends. It "expects" MSXML 4 ... but the VCL checks dynamically:

https://delphihaven.wordpress.com/2010/03/07/using-msxml6/

By default, the VCL’s TXMLDocument class will delegate to MSXML for its actual parsing and writing. Now MSXML itself comes in various versions, with newer ones being installed side-by-side with older ones. To cope with this situation, the VCL tests for the existence of a number of them, the idea being to prefer whatever MSXML version was current when the unit in question (MSXMLDOM.pas) was last updated.

The same link also discusses how to select a "preferred" MSXML version if you wish.

STRONG SUGGESTION: Compile your Delphi .exe or .dll and test it on a "clean machine" (presumably a PC with only MSXML 6 installed) and observe the behavior.

Upvotes: 1

Related Questions