IIS6, VBS и XMLHTTP: доступ запрещен при выполнении - PullRequest
0 голосов
/ 18 марта 2011

У меня есть файл VBS, который извлекает XML с нашего сайта. Он будет работать на нашем локальном сервере после завершения.

Проблема, с которой я столкнулся, заключается в том, что при запуске файла на моей рабочей станции (запуск IIS6 в XP SP3) я получаю сообщение об ошибке:

«Выполнение доступа запрещено: этот виртуальный каталог не разрешает выполнение объектов.»

Я открываю файл со своего рабочего стола, поэтому я понимаю, что есть параметр безопасности, который необходимо изменить, чтобы позволить исполняемым файлам иметь доступ к XMLHTTP. Как мне это исправить?

Function Get_XML(api_url)
    Dim objHTTP, RespText, TempRespText
    Set objHTTP = CreateObject("MSXML2.ServerXMLHTTP")

    objHTTP.open "Get", api_url, False
    objHTTP.setRequestHeader "Content-Type", "text/xml"
    objHTTP.send

    RespText = objHTTP.ResponseText

    'Get_XML = CreateObject("Microsoft.XMLDOM")
    'Get_XML.async = False
    'Get_XML.loadXML RespText

'For testing:
    Get_XML = RespText

    Set objHTTP = Nothing
End Function

1 Ответ

0 голосов
/ 18 марта 2011

Я нашел проблему.Очевидно, что версия VBScript, которую я использую, не позволяет запускать MSXML2.ServerXMLHTTP.Не уверен, что это актуальная версия или обновление безопасности.Поэтому я изменил:

Set objHTTP = CreateObject("MSXML2.ServerXMLHTTP")

На:

Set objHTTP = CreateObject("Microsoft.XMLHTTP")

И он отлично работает.

...