0

我刚刚从http://www.rarlab.com/rar_add.htm下载了 UnRAR.dll包包括 C# 示例项目,当我在选择 .rar 文件进行提取后在 VS 2010 中运行时,我收到以下错误消息

无法加载“UNRAR.DLL”

当我添加参考 unrar.dll 我得到以下错误

unrar.dll 无法加载

请帮助/指出我缺少什么?

4

2 回答 2

5

UnRAR.dll 不是 .NET 程序集,因此不能用作项目参考。

它是一个本地 DLL,因此您必须使用 P/Invoke 来访问它的方法或围绕它编写一个 C++/CLI 包装器。

这个 MSDN 论坛主题中有一些示例代码应该提供一个不错的起点并展示必要的方法。

Blue Mirror CD/DVD Indexer项目中似乎还包含一个相当完整的包装器。


还应该注意的是SevenZipSharp包括对这种开箱即用的支持。我自己没有使用过它,但它可能值得一试。

于 2012-03-12T21:08:04.353 回答
2

您正在谈论的样本使用

[DllImport("unrar.dll")]

访问库中的函数。

当测试项目运行时,这个 DLL 应该是可见的。
因此,您应该将其复制到 BIN\DEBUG 文件夹或您的项目运行的文件夹中。

于 2012-03-12T21:14:07.447 回答