ReadyToRun、または AOT (Ahead-Of-Time) コンパイルを使用する。
.NET ReadyToRun (R2R) は事前コンパイル (AOT) の一形態です。
展開中にReadyToRunコンパイルを有効にすると、改ざん保護を侵害し、以下の例外が発生する可能性があります:
Exception: Unhandled exception. IronSoftware.Exceptions.LicensingException: IronPdf, Version=2024.2.0.2, Culture=neutral, PublicKeyToken=94e1c31412563c75 assembly is not authentic. Please try to reinstall the nuget package
at IronPdf.PdfDocument.uswvws(Boolean vhfwdf)
at IronPdf.PdfDocument.get_BinaryData()
at IronPdf.PdfDocument.SaveAs(String FileName, Boolean SaveAsRevision)
at Program.<Main>(String[] args) in C:\csharppro\aottest\aottest\Program.cs:line 5理由
Microsoftのドキュメントによると、SDKはアプリケーションとともに配布されるアセンブリを事前コンパイルします。 自己完結型のアプリケーションの場合、このアセンブリセットにはフレームワークが含まれます。 C++/CLIのバイナリはReadyToRunコンパイルの対象外であることに注意が必要です。
解決策
ReadyToRun処理から特定のアセンブリを除外するには、プロジェクトファイルで<PublishReadyToRunExclude>リストを使用します。例えば、IronPdf.dllアセンブリを除外するには:
<ItemGroup>
<!-- Excludes IronPdf.dll from ReadyToRun compilation -->
<PublishReadyToRunExclude Include="IronPdf.dll" />
</ItemGroup><ItemGroup>
<!-- Excludes IronPdf.dll from ReadyToRun compilation -->
<PublishReadyToRunExclude Include="IronPdf.dll" />
</ItemGroup>指定されたアセンブリがReadyToRunで事前コンパイルされるのを防ぐために、このXMLスニペットをプロジェクトファイル (.csproj) に追加してください。これにより、潜在的なライセンスや改ざんの問題を回避できます。






