SevenZipSharp 在提取时显示当前提取文件
Posted
技术标签:
【中文标题】SevenZipSharp 在提取时显示当前提取文件【英文标题】:SevenZipSharp show current extracting file while doing extraction 【发布时间】:2012-12-09 05:08:56 【问题描述】:我正在使用 vb.net 并且想知道在提取档案时如何显示正在提取的文件。我已经有一个解决方法,但它很“作弊”,并没有真正显示当前正在提取的文件。
Public Class Form1
Private listItemIndex As Integer = 0
Public Sub ext_Extracting(ByVal sender As Object, ByVal e As SevenZip.ProgressEventArgs)
Dim ext As SevenZipExtractor = New SevenZipExtractor("C:\Test.7z")
If listItemIndex < ext.ArchiveFileNames.Count Then
Label1.Text = ext.ArchiveFileNames.Item(listItemIndex).ToString()
listItemIndex += 1
End If
End Sub
End Class
【问题讨论】:
【参考方案1】:这个答案是由 OP 写的,但不正确edited into the question:
好的,我明白了。我必须将“FileInfo.FileName”添加到“SevenZip.FileInfoEventArgs”中,然后在提取时对其进行引用。
Public Sub FileExtractionStarted(ByVal sender As Object, ByVal e As SevenZip.FileInfoEventArgs) Label1.Text = e.FileInfo.FileName End Sub Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click SevenZipExtractor.SetLibraryPath("C:\7z.dll") Dim ext As SevenZipExtractor = New SevenZipExtractor("C:\test.7z") ext.BeginExtractArchive("C:\Test") AddHandler ext.ExtractionFinished, AddressOf ext_ExtractionFinished AddHandler ext.Extracting, AddressOf ext_Extracting AddHandler ext.FileExtractionStarted, AddressOf FileExtractionStarted '<--- End Sub
【讨论】:
user1888932:如果您有兴趣从此答案中获得代表点数,请将其作为您自己的答案发布,然后在此处发表评论,我将删除此社区 wiki。以上是关于SevenZipSharp 在提取时显示当前提取文件的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 SevenZipSharp 提取多卷 7z 文件?