加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

adodb – Windows脚本宿主(jscript):我如何下载二进制文件?

发布时间:2020-12-13 21:31:29 所属栏目:Windows 来源:网络整理
导读:我正在尝试使用 Windows脚本宿主(JScript)自动下载文件.我看到ADODB.Stream有一个Open方法,其文档似乎应该可以打开HTTP URL并流式传输响应体: var url = 'http://example.com/example.tar.gz';var path = 'example.tar.gz';var input = WScript.CreateObjec
我正在尝试使用 Windows脚本宿主(JScript)自动下载文件.我看到ADODB.Stream有一个Open方法,其文档似乎应该可以打开HTTP URL并流式传输响应体:
var url = 'http://example.com/example.tar.gz';
var path = 'example.tar.gz';

var input = WScript.CreateObject('ADODB.Stream');

input.Open(url);
input.SaveToFile(path);
input.Close();

但它在公开电话上遭到轰炸

(null):在此操作的范围内未找到与名称,范围或选择条件匹配的对象或数据.

这是JScript中的下载代码.还添加了一些API信息的引用.
var Source = WScript.Arguments.Item(0);
var Target = WScript.Arguments.Item(1);
var Object = WScript.CreateObject('MSXML2.XMLHTTP');

Object.Open('GET',Source,false);
Object.Send();

if (Object.Status == 200)
{
    // Create the Data Stream
    var Stream = WScript.CreateObject('ADODB.Stream');

    // Establish the Stream
    Stream.Open();
    Stream.Type = 1; // adTypeBinary
    Stream.Write(Object.ResponseBody);
    Stream.Position = 0;

    // Create an Empty Target File
    var File = WScript.CreateObject('Scripting.FileSystemObject');
    if (File.FileExists(Target))
    {
        File.DeleteFile(Target);
    }

    // Write the Data Stream to the File
    Stream.SaveToFile(Target,2); // adSaveCreateOverWrite
    Stream.Close();
}

ADODB流:

> http://www.w3schools.com/ado/ado_ref_stream.asp
> http://msdn.microsoft.com/en-us/library/windows/desktop/ms675032.aspx
> http://msdn.microsoft.com/en-us/library/windows/desktop/ms680846.aspx

Scripting.FileSystemObject的:

> http://www.w3schools.com/asp/asp_ref_filesystem.asp

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读