我需要从URI自动下载并保存文件。我想我可以使用"urlmon“库中的URLDownloadToFile,但我想使用WebClient.DownloadFile方法。
我希望这是小菜一碟,但由于我之外的原因,我无法在VBA7IDE中查看或使用WebClient类的成员。我已经引用了.Net 2框架的System.tlb,并且能够看到System.Net名称空间中的类,但是许多类的成员是不可见的,我不能在我的代码中使用它们。
我在尝试使用如下代码时遇到编译错误:
Dim Downloader as New System.WebClient
Downloader.DownloadFile("uri","filename")也许我还没有注册要在VBA中使用的.Net类,因此出现了问题;但是,我的项目中引用的System.dll位于C:\Windows\Microsoft.NET\Framework\v2.0.50727\System.tlb
这让我更加困惑。此外,如果有人能详细说明在VBA7中引用.Net框架库的过程,也会很有帮助。
提前感谢!
发布于 2013-11-19 07:02:27
我建议使用.Net库来代替MSXML库。您可以在IDE中通过单击“工具”->“引用...”将其添加到VBA中。并选中"Microsoft XML,x.x“旁边的复选框,其中x.x是最新版本。
下面是您可以运行的快速测试:
Public Sub Downl()
Dim xhttp As MSXML2.XMLHTTP
Set xhttp = New MSXML2.XMLHTTP
Dim oFile As Integer
oFile = FreeFile()
Open CurrentProject.Path & "\test.png" For Binary Access Write As oFile
Dim bdata() As Byte
With xhttp
.Open "GET", "https://www.google.com/images/srpr/logo11w.png", False
.send
bdata = .responseBody
Put oFile, 1, bdata
End With
Close oFile
End Subhttps://stackoverflow.com/questions/20056591
复制相似问题