2013年10月20日 星期日

使用Windows內建命令列程式來實現HTTP檔案下載

不久之前,在臉書上看到了這則PO文...

於是我查了一下,在Windows裡完全不使用IE的狀況下,使用HTTP下載檔案大概可以歸納出這幾種方法:


使用Windows內建命令列軟體
  • BitsAdmin Tool (支援Windows XP SP2/SP3、Windows 7/8)
    範例:
    bitsadmin /transfer ChromeDownloadjob  /download /priority normal http://goo.gl/IC32jN %UserProfile%\Desktop\ChromeSetup.exe
    

    執行起來的介面貌似Wget

  • 使用WScript執行.vbs的VBScript(Windows大部分版本)
    範例:(另存成download.vbs來執行)
    Download "http://goo.gl/IC32jN", "ChromeSetup.exe"
    Function Download(strUrl, strFile)
    Set xHttp = CreateObject("MSXML2.ServerXMLHTTP")
    xHttp.Open "GET", strUrl,0
    xHttp.Send()
    Set bStrm= CreateObject("ADODB.Stream")
    with bStrm
        .type = 1 '//binary
        .open
        .write xHttp.responseBody
        .savetofile strFile, 2 '//overwrite
    end with
    End Function


從隨身碟使用第三方命令列軟體

  • 常見的有Wget、cURL

3 則留言:

  1. 請問大大BitsAdmin Tool 是否有辦法下載後自動執行的動作呢??

    回覆刪除
    回覆
    1. 應該是有的
      根據上面BitsAdmin Tool說明連結
      有個參數叫做 /SetNotifyCmdLine Job Program_Name[Program_Parameters]
      試試看應該能解決你的問題

      刪除
  2. 友情链接来一发
    名称:lsh4ck's blog
    地址:www.lshack.cn
    你的已好

    回覆刪除