【发布时间】:2014-07-29 20:08:35
【问题描述】:
当我在 Windows 7 上以管理员身份运行脚本时,以下 MS Jscript 文件工作正常并返回 XML 文件。当我以 LocalSystem 运行它时,它在某些 PC 上没有返回任何内容。使用wireshark查看数据包,似乎本地PC正在发出一个FIN数据包,当使用LocalSystem运行脚本时,该数据包正在停止网络通信。我会很感激任何指示。
var filePath = "https://someurlhere";
WScript.Echo("Reading XML file: " + filePath);
var xsl = new ActiveXObject("Msxml2.DOMDocument.3.0");
xsl.async = false;
xsl.validateOnParse = false;
xsl.load(filePath);
WScript.Echo("XSLT: " + xsl.xml);
【问题讨论】:
-
“本地”系统可能说明了一切。本地服务/进程没有与网络打交道的业务,因此可能是 Windows 防火墙不允许连接尝试
-
事实并非如此。我创建了一个 vbs,即使作为 LocalSystem 运行也能够下载 XML 文件:
-
我猜
xmlObj.load()从本地文件系统加载,而不是从 HTTP 加载。我可能弄错了,但使用Microsoft.XMLHTTPCOM 对象可能会更好。