我正在尝试使用 SevenZipSharp 压缩和提取文件,但出现以下错误:
Can not load 7-zip library or internal COM error! Message: failed to load library.
我的代码:
string extractFrom = @"C:\Test\Test.7z";
string extractTo = @"C:\Test2";
string compressFrom = @"C:\Test2";
string compressTo = @"C:\Test\Test2.7z";
SevenZipBase.SetLibraryPath(@"C:\Program Files\7-Zip\7z.dll");
SevenZipCompressor compressor = new SevenZipCompressor();
compressor.CompressionMode = CompressionMode.Create;
compressor.TempFolderPath = Path.GetTempPath();
compressor.ArchiveFormat = OutArchiveFormat.SevenZip;
compressor.CompressDirectory(compressFrom, compressTo);//Error
SevenZipExtractor extractor = new SevenZipExtractor(extractFrom);
extractor.ExtractArchive(extractTo);//Error
错误在:
compressor.CompressDirectory(compressFrom, compressTo);
在:
extractor.ExtractArchive(extractTo);
我该如何解决这个问题?
最佳答案
最明显的答案:dll 不在给定的路径中。
但我假设您已经尝试过,但如果您混合使用 32 位和 64 位应用程序,这也是一个已知问题。因此,如果您的应用程序运行 32 位并且 7zip 安装为 x64,则会抛出此错误。
关于c# - 使用 SevenZipSharp 压缩和提取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33119417/