У меня возникла проблема с обновлением ядра Microsoft XML для моего приложения из msxml3.dll в msxml6.dll. Я добавил vcproj и файл заголовка, чтобы указать на заголовок и файл библиотеки msxml6. Я также изменил идентификатор класса msxml6 для создания документа praser с использованием функции CoCreateVariant().Обновление до MsXml6.dll
Во время выполнения я обнаружил, что мое приложение выдает обработку и прерывание невозврата. Затем я отлаживался с помощью Visual studio и обнаружил, что функция getElementByTagName() возвращает нулевой указатель, используя библиотеку msxml6.dll, которая в свою очередь приводит к отмене прерывания и отлично работает с msxml3.dll.
Кто-нибудь знает, почему это «необработанное исключение» было из-за msxml6.dll? И как я могу это исправить?
Спасибо, Самуил. Да, вы правы, я пытаюсь обновить msxml3.dll до msxml6.dll. Приложение, которое у меня было, полностью написано на C++. Поскольку в msxml3.dll было больше утечек памяти, я лучше обновил его до msxml6.dll. Не могли бы вы объяснить, как использовать Xpath для исправления этой ошибки? – Santhosh77
XPath - это пространство имен, поэтому вы можете использовать selectSingleNode и selectNodes для получения нужных вам узлов. Вы можете найти MSDN для подробной документации. –