我需要通过vba应用程序在msaccess中下载一个很大的文件。
使用对象MSXML2.ServerXMLHTTP.6.0和WinHttp.WinHttpRequest.5.1会导致错误,指出没有足够的存储空间来完成此操作。因此,我求助于使用shdocvw.dll中的DoFileDownload方法。 我想做的是将一个额外的标头(API密钥)传递给该函数发送的请求。
这大概是我想要做的。
Private Declare Function DoFileDownload Lib "shdocvw.dll" _
(ByVal lpszFile As String) As Long
Public Sub Download()
sDownloadFile = StrConv(<link_to_download>, vbUnicode)
'set a header before calling DoFileDownload
Call DoFileDownload(sDownloadFile)
End Sub
我该如何解决这个问题?
答案 0 :(得分:0)
一次下载整个文件的WebRequest会存储整个数据作为响应。
虽然有一些块响应选项,但是使用Wget编码较少,但是选项更多。
>>> [list(map(i.index, i)) for i in list1]
[[0, 1, 2], [0, 1], [0, 1, 2, 3]]
>>>