Приложение с ошибкой Microsoft MsXml не установлено
Мое приложение сделано с использованием C++ builder XE3. В моем приложении я сделал несколько разбор XML с использованием XML.xmldoc.hpp
На компьютере с XP, когда я запускаю приложение, отображается окно сообщения "Microsoft msxml не установлен".
Пожалуйста, кто-нибудь может мне помочь??
2 ответа
Сообщение об ошибке немного вводит в заблуждение. Это не значит, что MSXML вообще не установлен. MSXML использует COM, и сообщение об ошибке фактически означает, что COM-объект MSXML не может быть создан с помощью CoCreateInstance()
(и MSXML DOMVendor для TXMLDocument
пытается создать несколько разных версий MSXML, прежде чем сдаться). Это тонкое, но важное различие. Например, если вы используете XMLDocument в рабочем потоке, вы должны убедиться, что вы вызываете CoInitialize/Ex()
заранее. C++Builder делает это за вас в основном потоке пользовательского интерфейса, но вы должны сделать это вручную в рабочем потоке.
Вероятно, вам нужно найти установщик msxml6.dll (стандартный для Windows 7)
XP работала с msxml4.0