原本用vb写一个下载文件的组件。发现用的两个系统activex也许可以使用js来调用。
尝试之。可以实现。
如果出现 automation服务器不能创建对象,你需要检查:
1、修改IE安全设置,启用activex或降低安全级别。
2、开始 运行 regsvr32 scrrun.dll
如果还是这样:
3、开始 运行 regedit进入注册表
将HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Internet Explorer/ActiveX Compatibility/{00000566-0000-0010-8000-00AA006D2EA4}
下的键值由400(禁用)改为0
var xmlhttp; if (window.ActiveXObject) { var Versions = [ "MSXML2.XMLHttp.5.0","MSXML2.XMLHttp.4.0","MSXML2.XMLHttp.3.0","MSXML2.XMLHttp","Microsoft.XMLHttp"]; for (var i = 0; i < Versions.length; i++) { try { xmlhttp = new ActiveXObject(Versions[i]); } catch (e) {} } } //XMLHTTP = CreateObject("Microsoft.XMLHTTP") xmlhttp.open("GET", "http://localhost:8080/naf/xls/5w.zip", false);//此处为要下载的文件网络url xmlhttp.send(); var Contents = xmlhttp.responseBody; var oStr = new ActiveXObject("ADODB.Stream"); oStr.Mode = 3; oStr.Type = 1; oStr.Open(); oStr.Write(Contents); oStr.SaveToFile("c://5w.zip", 2);//此处为要保存的本地路径