我最近从itext下载了试用许可证文件。
我像这样加载许可文件:
LicenseKey.LoadLicenseFile("itextkey.xml");
这是我的csproj
文件:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>netcoreapp2.1</TargetFramework>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="itext7" Version="7.1.4" />
<PackageReference Include="itext7.licensekey" Version="3.0.4" />
<PackageReference Include="itext7.pdfhtml" Version="2.0.0" />
</ItemGroup>
</Project>
有了这种配置,一切都很好。
但是,如果我切换到netcoreapp1.1
,代码会中断并出现以下错误:
iText.License.LicenseKeyException: Signature was corrupted.
at iText.License.Validators.LicenseKey7Validator.CheckLicenseeSignature(String signatureBuildString, String licenseeSignature)
at iText.License.Validators.LicenseKey7Validator.LoadLicense(XmlElement licenseKeyRoot)
at iText.License.LicenseKey.LoadLicenseFileInternal(Stream licenseIs)
at iText.License.LicenseKey.LoadLicenseFile(String pathToLicFile)
如何在1.1
上使用此功能?
错误本质上是告诉您"文件的(解密的(哈希值与我期望的哈希值不匹配"。
来自iText网站:
这可能意味着几件事:
许可证密钥文件在下载过程中已损坏。尝试再次下载并加载新下载的文件。如果问题仍然存在,请联系我们,以便我们能够解决此问题。
您更改了许可证密钥的内容。请恢复到许可证密钥的原始状态。如果要更改内容的钥匙,请联系我们的销售部门。