IRONSOFTWAREHOME

ReadyToRun veya Zamanında Ön Derleme (AOT) Kullanma

Curtis Chau
Curtis Chau
Updated: 29 Haziran 2026

.NET ReadyToRun (R2R), zamanında ön planlanan (AOT) bir derleme biçimidir.

Dağıtım sırasında ReadyToRun derlemeyi etkinleştirmek, kurcalama korumasını ihlal edebilir ve aşağıdaki gibi istisnalara neden olabilir:

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
Text

Neden

Microsoft belgelerine göre, SDK, uygulama ile dağıtılan bütünleştirilmiş kodları ön derleyecektir. Bağımsız uygulamalar için, bu montajlar seti çerçeveyi içerecek. C++/CLI ikili dosyalarının ReadyToRun derlemesi için uygun olmadığını belirtmek önemlidir.

Çözüm

HazırÇalıştır işlemesinden belirli derlemeleri hariç tutmak için proje dosyanızdaki <PublishReadyToRunExclude> listesini kullanın. Örneğin, IronPdf.dll derlemesini hariç tutmak için:

<ItemGroup>
    <!-- Excludes IronPdf.dll from ReadyToRun compilation -->
    <PublishReadyToRunExclude Include="IronPdf.dll" />
</ItemGroup>
XML

Bu XML parçacığı, belirtilen derlemelerin HazırÇalıştır ile önceden derlenmesini önlemek ve bu sayede potansiyel lisanslama veya kurcalama sorunlarının önüne geçmek için proje dosyanıza (.csproj) eklenmelidir.

Sist. Ortam.FailFast İlk IronPDF Çağrısında

Bazı Windows dağıtımlarında, IronPDF ilk IronPDF çağrısında uygulama seviyesinde günlük çıktısı olmadan işlemi anında çökertir. Windows Olay Günlüğü benzer bir giriş kaydeder:

The application requested process termination through System.Environment.FailFast.
Message: Stack: at System.Environment.FailFast(System.String)
  at <Module>..cctor()
  at Program.<Main>$(System.String[])
Text

Bu, yukarıdaki lisanslama istisnasından farklı bir başarısızlıktır. Çökme, normal loglama kullanılabilir hale gelmeden önce, statik başlatma sırasında gerçekleşir, bu nedenle işlem sonlanmadan önce IronPDF günlük satırları görünmez.

Bu desen, Windows Server üzerindeki IIS'de barındırılan ASP.NET Core uygulamalarında PublishReadyToRun etkinleştirildiğinde doğrulanmıştır. Yapıyabilir:

  • IronPDF 2026.4.1
  • .NET 10
  • Windows Server 2025 Datacenter'deki IIS (w3wp.exe)
  • AWS EC2 win-x64 yayımlama hedefi

Çözüm

Uygulama için <PublishReadyToRun>true</PublishReadyToRun> saklayın ve yalnızca IronPdf.dll hariç tutun:

<ItemGroup>
    <PublishReadyToRunExclude Include="IronPdf.dll" />
</ItemGroup>
XML

Tam bir .csproj örneği:

<PropertyGroup>
    <TargetFramework>net10.0</TargetFramework>
    <Nullable>enable</Nullable>
    <ImplicitUsings>enable</ImplicitUsings>
    <PublishReadyToRun>true</PublishReadyToRun>
</PropertyGroup>

<ItemGroup>
    <PackageReference Include="IronPdf" Version="2026.4.1" />
</ItemGroup>

<ItemGroup>
    <PublishReadyToRunExclude Include="IronPdf.dll" />
</ItemGroup>
XML

Güncellemeyi .csproj yaptıktan sonra, uygulamayı yeniden yayınlayın, CD BYU yapın ve IIS sitesini yeniden başlatın veya Uygulama Havuzunu geri dönüştürün.

Curtis Chau
Teknik Yazar

Curtis Chau, Bilgisayar Bilimleri alanında Lisans Derecesine (Carleton Üniversitesi) sahip ve Node.js, TypeScript, JavaScript ve React konularında uzmanlaşmış ön uç geliştirmeyle ilgileniyor. Sezgisel ve estetik açıdan hoş kullanıcı arayüzleri oluşturma tutkunu, Curtis modern çerçevelerle çalışmayı ve iyi yapılandırılmış, görsel olarak çekici kılavuzlar oluşturmayı seviyor.

...
Daha Fazla Oku

Başlamaya Hazır mısınız?

Nuget Downloads 20,756,830Sürüm:2026.7yeni yayınlandı

Ücretsiz 30 Günlük Deneme Anahtarınızı anında alın.
Kredi kartı veya hesap oluşturma gerektirmez
PDF için C# NuGet Kütüphanesi
NuGet ile yükleyin

Sürüm: 2026.7

PM > Install-Package IronPdf
nuget.org/packages/IronPdf/
  1. Çözüm Gezgini'nde Referanslar'a sağ tıklayın, NuGet Paketlerini Yönet
  2. Tarayıcıya tıklayın ve "IronPdf" arayın
  3. Paketi seçin ve yükleyin
C# PDF DLL
DLL İndir

Sürüm: 2026.7

veya Windows Yükleyiciyi şuradan buradan indirin.

  1. IronPDF'i, ~/Libs gibi bir yere, Solution dizininiz içinde indirin ve açın.
  2. Visual Studio Çözüm Gezgini'nde, Referanslar'a sağ tıklayın. Tarayıcı sekmesini seçin, "IronPdf.dll"

Lisanslar $999

Key in blue circle

Ücretsiz 30 günlük Deneme Anahtarınızı anında edinin.

Your trial license will be sent to your email address

Herhangi bir sınırlama yoktur. %100 erişim. Kredi kartı gerekmez.

bullet_checkedKredi kartı veya hesap oluşturma gerektirmezHerhangi bir sınırlama yoktur. %100 erişim. Kredi kartı gerekmez.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Ücretsiz Canlı Demo rezervasyonu yapın
Booking Badge

Dünya Çapında Milyonlarca Mühendisin Güvendiği

Iron Software müşteri logoları
Bağımsız Danışmanlık Alın
Aşağıdaki formu doldurun veya sales@ironsoftware.com adresine e-posta gönderin
Bilgileriniz daima gizli kalacaktır.
Dünya Çapında Milyonlarca Mühendisin Güvendiği
Iron Software müşteri logoları
Ücretsiz 30 Günlük Deneme Anahtarınızı anında alın.
Kredi kartı veya hesap oluşturma gerektirmez