在Visual Basic .NET中提取Zip文件

时间:2016-11-04 16:43:25

标签: vb.net visual-studio-2015 zipfile

我正在开发一个Visual Basic项目,我正陷入一些超级简单的事情。解压缩文件。

我有以下导入

`Imports System.Net
Imports System
Imports System.IO
Imports System.IO.Compression`

我的参考资料如下

System
System.Core
System.Data
System.Data.DataSetExtensions
System.Deployment
System.Drawing
System.IO.Compression
System.IO.Compression.FileSystem
System.Net.Http
System.Windows.Forms
System.Xml
System.Xml.Linq

那么我的代码应该做的是检查是否安装了软件, 如果不是,它将下载已安装的zip文件。

下载zip后,它应该将其解压缩并运行设置。

除了这个代码块之外,一切正常:

Private Sub client_OMSADownloadCompleted(ByVal sender As Object, ByVal e As System.ComponentModel.AsyncCompletedEventArgs)
    MessageBox.Show("Download Complete")
    Try
        ZipFile.ExtractToDirectory("C:\end.zip", "C:\end")
    Catch ex As Exception
        MsgBox("Can't Extract file" & vbCrLf & ex.Message)
    End Try
End Sub

    Public NotInheritable Class ZipFile
    Public Shared Sub ExtractToDirectory(
    sourceArchiveFileName As String,
    destinationDirectoryName As String
)
    End Sub
End Class

我没有例外,它只是没有解压缩,它基本上跳过了块。

请帮忙!

2 个答案:

答案 0 :(得分:0)

根据您的代码,您继承了ZipFile类的方法ExtractToDirectory,它不执行任何操作。

Public NotInheritable Class ZipFile
    Public Shared Sub ExtractToDirectory(sourceArchiveFileName As String,
                                        destinationDirectoryName As String)
    End Sub
End Class

要解决此问题,请从代码中删除此方法。

答案 1 :(得分:0)

您自己声明attribute课程,而您应该使用ZipFile命名空间中的现有课程。因此,只需删除以下部分代码:

System.IO.Compression

......一切都应该按预期工作。