Как я могу использовать sevenzipsharp, чтобы асинхронно разархивировать список архивов и правильно их утилизировать?
Как я могу использовать SevenZipSharp для асинхронной распаковки списка архивов и правильного их удаления?
Вот что я смотрю на:
Public Class SevenZipVB
Private Shared extractors As New List(Of SevenZipVB)
Private WithEvents _extractor As SevenZip.SevenZipExtractor
''' <summary>
''' Extracts list of archives to their current directory always overwriting
''' </summary>
''' <param name="archives">List of full path names to archives</param>
Public Shared Sub BeginExtraction(ByVal archives As List(Of String))
For Each archive In archives
Dim ext = New SevenZipVB(archive)
extractors.Add(ext)
Next
'magically wait for all extraction to finish but allow the calling thread to continue
End Sub
Private Sub New(ByVal archive As String)
_extractor = New SevenZip.SevenZipExtractor(archive)
_extractor.BeginExtractArchive(Path.GetDirectoryName(archive))
End Sub
Private Sub extractfinished() Handles _extractor.ExtractionFinished
_extractor.Dispose()
End Sub
End Class
Я думаю, мне придется добавить какой-то асинхронный метод, но я не знаю, как он должен выглядеть. Есть идеи?
1 ответ
Решение
Не беспокойтесь, эта библиотека больше не поддерживается, просто используйте командную строку 7za или 7zr