0

我正在尝试使用 C# 提取 ISO,我找到了一个 Winzip 库DotNetZip并使用了它,但是当我运行该项目时它说它无法提取 ISO。

string activeDir = copyTo = this.folderBD.SelectedPath;;

folderName = toExtract.Remove(toExtract.Length - 4, 4);

Path.Combine(activeDir,  Path.GetFileNameWithoutExtension(folderName));

string zipToUnpack = toExtract;
string unpackDirectory = folderName;

using (ZipFile zip1 = ZipFile.Read(zipToUnpack))
{
    // here, we extract every entry, but we could extract conditionally
    // based on entry name, size, date, checkbox status, etc.  
    foreach (ZipEntry file in zip1)
    {
        file.Extract(unpackDirectory, ExtractExistingFileAction.OverwriteSilently);
    }
}

这就是我正在使用的代码。copyTofolderName从程序中的其他方法传入。

任何让我在 ISO 上使用 Winzip 或 Winrar 的库都会有很大的帮助,但到目前为止,我的搜索没有任何结果。

提前致谢

编辑:您只能使用带有 C# 的 winrar 提取 .rar 或 .zip,还是可以将要提取的文件作为参数传递以及如何?我试过了

ProcessStartInfo startInfo = new ProcessStartInfo("winrar.exe"); Process.Start("winrar.exe",@"C:\file\to\be\extracted");

ISO 位置,但这会返回一个异常,即那里没有可提取的内容。

4

1 回答 1

1

您可以使用 Process.Start 从 c# 执行 winrar 并传入提取 iso 所需的参数。

于 2012-05-10T15:31:30.087 回答