2016-11-04 5 views
0

Я работаю над Visual Basic Project, и я зацикливаюсь на чем-то супер простом. Распакуйте файл.Извлечение Zip-файла в Visual Basic .NET

У меня есть следующий импорт

`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 

я не получаю никаких исключений, он просто не разархивировать, он в основном пропускает прямо над блоком.

Пожалуйста, помогите!

+0

Вы получаете сообщение об ошибке? – McNets

+0

Nope no error (see edit) просто не запускается –

+0

Почему вы объявляете пустой метод ExtractToDirectory()? – McNets

ответ

0

В соответствии с вашим кодом вы наследуете метод ExtractToDirectory класса ZipFile, который ничего не делает.

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

Чтобы решить эту проблему, просто удалите этот метод из своего кода.

0

Вы сами объявляете класс ZipFile, в то время как вы должны использовать существующее из System.IO.Compression пространства имен. Поэтому просто удалите следующую часть кода:

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

... и все должно работать должным образом.

Смежные вопросы