VB:从互联网下载ZIP文件(并提取)

时间:2011-06-21 11:32:31

标签: vb.net file zip

我需要以某种方式使用Visual Basic从互联网上下载ZIP文件。 这是我现在拥有的:

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    Dim NewAppData As String
    NewAppData = Environment.ExpandEnvironmentVariables("%AppData%/.minecraft.zip")
    Call DownloadFile("http://blahblahbacksheep.co.cc/.minecraft.zip", NewAppData)
End Sub

当我调试程序时,它给了我以下内容:

Function 'DownloadFile' doesn't return a value on all code paths. A null reference exception could occur at run time when the result is used.

我要做的是下载ZIP文件,然后将其解压缩。如果可能的话,以百分比显示标签,例如:

Downloaded: 100%
Extracting: 35%....

有人可以给我任何资源或编写一些代码来完成部分/全部吗?

由于

1 个答案:

答案 0 :(得分:1)

对于问题的解压缩部分:7-Zip是一个非常棒的开源文件归档实用程序,它具有良好的命令行界面。这是一个如何从VB调用7-Zip的例子(一旦安装完毕):

Set WshShell = VBA.CreateObject("WScript.Shell")
WshShell.Run "c:\Program Files\7-Zip\7z.exe " & _
    "a -tzip myarchive.zip file.dat file2.txt file3.png", 1, True

此示例将三个文件压缩到一个存档中,而您希望从存档中提取文件...只需在文档中查找相应的命令即可。

请注意,7-Zip正在执行时会弹出一个命令窗口,在那里你会看到一个%进度指示器。如果你希望这个指标出现在其他地方,那么你可以通过一些独创性将标准输出传输到其他相关位置。

相关问题