我正在尝试从ftp位置下载软件。下载完成后,应开始安装。我是否知道如何使用VBscript检查下载是否已完成。
这是我正在使用的当前逻辑但是我得到对象要求:" 错误
我正在从jar文件中实例化vbscript
set shell = wscript.CreateObject("WScript.Shell")
shell.AppActivate ("Internet Explorer")
Dim objHTTP
Do
wscript.sleep 100
Loop While( objHTTP.readyState <> 4 ) And ( objHTTP.readyState <> "complete" )
msgbox ("download completed")
答案 0 :(得分:1)
shell 和 objHTTP 对象没有链接在一起,也不可能。 您无法使用 objHTTP 检查从 shell 开始的下载,您需要使用 objHTTP 对象管理整个下载。
您可以采取以下措施来管理下载:
Const BINARY = 1
Const CREATE = 2
' Download 7-ZIP 64bits.
myUrl = "http://www.7-zip.org/a/7z938-x64.msi"
' Save to disk in that file.
myFile = "c:\temp\7z938-x64.msi"
Set oHttp = WScript.CreateObject("WinHttp.WinHttpRequest.5.1")
oHttp.open "Get", myURL, False
oHttp.send
Set oStream = WScript.CreateObject("ADODB.Stream")
oStream.type = BINARY
oStream.open
oStream.write oHTTP.ResponseBody
oStream.SaveToFile myFile, CREATE
ostream.Close
此外,不是最干净的答案,但如果您知道,您可以检查下载的文件何时达到其循环中的大小。