2016-12-01 91 views
0

当我在我的Windows 10 UWP应用程式安装SevenzipSharp.Net45,我收到此消息:VS2015 - 的NuGet - 包装不符合UAP,版本= V10.0

包SevenZipSharp.Net45 1.0.5不兼容uap10.0(UAP,版本= v10.0)。软件包SevenZipSharp.Net45 1.0.5支持:net45(.NETFramework,Version = v4.5) 一个或多个软件包与UAP版本= v10.0不兼容。

此消息是目前还与其他包 我已经让我的UWP应用与框架4.6,但我也有4.5试过,问题是一样的吗?

我必须改变一些东西吗? 非常感谢。

+2

错误是不言自明的。该软件包不是为UWP设计的。它的.net 4.5 – AVK

+0

任何人都知道链接下载正确的软件包? –

回答

0

要提取UWP中的7Zip文件,我们可以使用SharpCompress。该软件包支持.NETStandard 1.3,因此可用于UWP应用程序。要使用这个库,我们可以安装它from NuGet

安装,包装sharpcompress

请注意用这个包,我们还需要使用至少5.2.2版本Microsoft.NETCore.UniversalWindowsPlatform现在。

以下是一个简单的例子。

using (var stream = await (await Windows.ApplicationModel.Package.Current.InstalledLocation.GetFileAsync(@"Assets\test.7z")).OpenStreamForReadAsync()) 
{ 
    using (var archive = SharpCompress.Archives.SevenZip.SevenZipArchive.Open(stream)) 
    { 
     var entry = archive.Entries.First(); 
     using (var entryStream = entry.OpenEntryStream()) 
     { 
      var file = await ApplicationData.Current.LocalFolder.CreateFileAsync(entry.Key, CreationCollisionOption.OpenIfExists); 
      using (var fileStream = await file.OpenStreamForWriteAsync()) 
      { 
       entryStream.CopyTo(fileStream); 
      } 
     } 
    } 
}