2011-03-18 59 views
0

我有一个VBS文件正在从我们的网站中抽取XML。一旦它完成,它将在我们的本地服务器上运行。我有IIS6,VBS&XMLHTTP:执行拒绝访问

碲问题是,当我在我的工作站(在XP SP3运行IIS6)上运行的文件,我得到的错误:

“执行访问被拒绝:此虚拟目录不允许对象被执行“。

我从我的桌面打开文件,所以我知道有一个安全参数需要更改以允许可执行文件访问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 

回答

0

我发现了这个问题。显然,我运行的VBScript版本不允许MSXML2.ServerXMLHTTP运行。不知道它是实际版本还是安全更新。因此,我改变:

Set objHTTP = CreateObject("MSXML2.ServerXMLHTTP") 

要:

Set objHTTP = CreateObject("Microsoft.XMLHTTP") 

,它运行完美。