解压缩rar文件

时间:2013-08-29 23:33:26

标签: vb.net unpack unrar

好的,所以我搜索了dll文件,这些文件将允许我使用unrar文件,我能找到很多,比如unrar.dll,chilkat,sharpcompress等等,但我想使用Rar提供的文件。自己。

所以我在项目中引用了DLL文件并导入了它。我使用的是unrar.dll。

但是我无法找到任何最新的代码来允许我测试和尝试。我发现的所有例子都不是Vb.net的最新版本。

我也尝试了安装中出现的官方示例,但即使在我修复它之后也没有用,当我尝试使用代码时我总是遇到错误

object reference not set to an instance of an object

我只想将一个rar文件从特定位置解压缩到我的程序的根目录,所以如果我的程序在桌面上,我希望它在我的文档中解压缩文件并将文件解压缩到我的桌面。

2 个答案:

答案 0 :(得分:3)

如果您只想要unrar文件,我可以使用SharpCompress

执行此操作

我创建了新的VB.Net App并添加了对SharpCompress.dll的引用并使用了此代码

'Imports 
Imports SharpCompress.Archive
Imports SharpCompress.Common

'Unrar code
Dim archive As IArchive = ArchiveFactory.Open("c:\file.rar")
For Each entry In archive.Entries
    If Not entry.IsDirectory Then
        Console.WriteLine(entry.FilePath)
        entry.WriteToDirectory("c:\unrar", 
          ExtractOptions.ExtractFullPath Or ExtractOptions.Overwrite)
    End If
Next

More code samples

答案 1 :(得分:0)

对于那些将在vb.net中尝试的人来说,提取选项被重命名并用作

Dim options As New ExtractionOptions With {
    .ExtractFullPath = True,
    .Overwrite = True
}
entry.WriteToDirectory(Application.StartupPath, options)