2014-09-02 81 views
0

我的应用程序是使用C++ builder XE3制作的。 在我的应用程序已经完成使用XML.xmldoc.hpp应用程序显示错误未安装Microsoft MsXml

一些XML解析在XP机器当我运行的应用程序是显示我的消息框“未安装Microsoft MSXML” 。

请任何人都可以帮助我?

回答

0

Problably你需要找到msxml6.dll安装(标准与Windows 7)

XP与MSXML4.0

link download

+0

我有另一个应用程序工作正常..所以首先我想我必须静态链接到应用程序xe3的xmlrtl.bpi文件。 ..我做到了,但也没有工作。 。我的另一个应用程序不使用msxml6.dll,但它仍然工作正常。 – Anup 2014-09-02 16:29:34

+0

英巴卡迪诺的MSXML支持足够智能,可以从v6开始并根据需要加载较早的版本,直到任何一个成功或者全部失败。 – 2014-09-02 20:05:10

+0

我在声明中遇到错误。 。 _di_IXMLDocument pDoc = NewXMLDocument(L“1.0”); – Anup 2014-09-03 09:48:36

2

错误信息工作是有点误导。这并不意味着MSXML根本没有安装。 MSXML使用COM,并且错误消息实际上意味着无法通过CoCreateInstance()实例化MSXML COM对象(并且MSXML DOMVendor的TXMLDocument尝试在放弃之前实例化几个不同版本的MSXML)。这是一个微妙而重要的区别。例如,如果您在工作线程中使用XMLDocument,则必须确保您事先调用CoInitialize/Ex()。 C++ Builder在主UI线程中为你做了这些工作,但你必须在工作线程中手动完成它。

+0

感谢您解决这个问题。创造了我的一天。 – TomB 2018-02-23 06:36:30

相关问题