Ошибка DTD при загрузке XML с использованием MSXML2.DOMDocument60 - PullRequest
0 голосов
/ 03 июля 2018

У меня уже есть ряд функций, разработанных для работы с XML-файлами с использованием MSXML2.DOMDocument60. Тем не менее, когда я пытаюсь загрузить HTML-страницу, используя приведенный ниже код, я получаю сообщение об ошибке

«DTD не разрешен»

. Кто-нибудь знает, что я делаю не так?

Dim xml As MSXML2.DOMDocument60
Set xml = New MSXML2.DOMDocument60

If xml.Load(pathToHtml) Then
    Debug.Print "Success"
Else
    Debug.Print "Could not load the document: " & pathToHtml
    If xml.parseError.ErrorCode <> 0 Then Debug.Print "Error when loading was: " + xml.parseError.reason
End If

Заранее спасибо за любой совет,

John

1 Ответ

0 голосов
/ 03 июля 2018

Я думаю, вы можете установить для свойства ValidateOnParse значение false - по умолчанию это True.

Это свойство используется, чтобы указать, должен ли анализатор XML проверять (true) этот документ на соответствие определению типа документа (DTD), схеме или кэшу схемы при загрузке. Это свойство поддерживается в MSXML 6.0.

Прямо перед вашей линией

If xml.Load(pathToHtml) Then

попробуйте добавить строку:

xml.validateOnParse = False

Подробнее на сайте Microsoft

...