Sorun Giderme

Yaygın hataları teşhis edin

Aşağıdaki her mesaj, Doconut'un ürettiği tam metin olup, semptoma göre düzenlenmiştir. Hatanızı bulun, düzeltmeyi uygulayın.

Görüntüleyici hiçbir şey göstermiyor

Boş görüntüleyici alanı, tarayıcı konsolu /doconut-res/... için 404'lerle dolu
UseDoconutResources() eksik veya UseDoconut()'dan sonra yer alıyor. Boru hattında ilk olarak gelmelidir.

HTTP 500 ile:

text
Session middleware not configured. Call UseSession() before UseDoconut().

Doconut'un token güvenliği (varsayılan olarak açık) ASP.NET oturum durumuna ihtiyaç duyar. builder.Services.AddSession() ve app.UseSession() ekleyin Doconut ara katman dalından önce.

Sayfa alanında şu metni içeren bir hata resmi:

text
You Are Not Authorized To View This Page.

Token, farklı bir tarayıcı oturumu tarafından açıldı. Yaygın nedenler: oturum çerezi sayfa isteklerine ulaşmıyor (çapraz kaynak ayarı, SameSite politikası, çerez kavanozu olmayan bir API istemcisi) veya uygulama yeniden başlatıldı (yeni oturum anahtarları). Bu, tasarlandığı gibi çalışan güvenlik katmanıdır — Temel Kavramlar → Oturumlar ve Güvenlik bölümüne bakın.

Şu metni içeren bir hata resmi:

text
Document session not found. Please re-open document.

Token süresi doldu (kaydırmalı pencere, varsayılan 60 dakika — DocOptions.TimeOut) veya oturum kapatıldı. Yeni bir token için belgeyi yeniden açın.

Belge açma başarısız oluyor

LicenseException reddetme mesajı ile — lisans dosyası bulundu ancak reddedildi (geçersiz imza, değiştirilmiş, kara listeye alınmış veya lisansın sürüm/güncelleme penceresi dışındaki bir yapı). Bu durum, belgeyi açmayı (hızlı hata) engeller, filigran düşürmek yerine; nedeni öğrenmek için License.RejectionMessage okuyun.

LicenseException:

text
This document type requires the 'Dicom' plugin license.

Bu uzantı yalnızca bir eklenti (burada: DICOM) tarafından işlenir ve yetenek artık verilmemiştir. Eklentiyi kaydedin ve lic.IsCapabilityGranted(LicenseCapability.Dicom) kontrol edin. Eksik veya yetersiz geçici olmayan bir yetki genellikle AddDoconut() sırasında daha önce başarısız olur.

FormatNotSupportedException:

text
Document format '<extension>' is not supported.

Hiçbir görüntüleyici — yerleşik, eklenti veya özel — bu uzantıyı desteklemiyor. Desteklenen format listesine bakın; kendi formatlarınız için DoconutOptions.RegisterViewer bir tane ekleyebilir.

InvalidDataException — dosya içeriği bozuk veya uzantısıyla eşleşmiyor (ör. yeniden adlandırılmış bir dosya). Açmadan önce yüklemeleri doğrulayın.

InvalidOperationException:

text
No IDocumentConverter is registered. Add the converter plugin: options.AddPlugin<Doconut.Plugins.Converter.ConverterPlugin>().

DocumentConverter'ı kaydetmeden Çevirici eklentisini kaydettiniz.

Başlangıçta başarısızlık

AddPlugin ile kaydedilen bir eklentiden bahseden InvalidOperationException — mevcut geçici olmayan lisans bu eklenti yeteneğini vermiyor. Kaydı kaldırın veya yetki veren bir lisans yükleyin. Eksik bir lisans ve eski bir TRIAL dosyası hiçbir eklenti yetkisi vermez.

AddDoconut()'dan ArgumentException:

text
DoconutOptions.MiddlewarePath must be a non-empty path starting with '/'.
DoconutOptions.ResourcesPath must be a non-empty path starting with '/'.
DoconutOptions.MiddlewarePath and ResourcesPath must be different paths.

Hızlı hata seçenek doğrulaması — hatalı yolu düzeltin.

Derleme / bağımlılık hataları

Derleyici hatası CS1705, veya bir belge açılırken çalışma zamanında:

text
Could not load file or assembly 'System.Text.Json, Version=10.0.0.0'

Projeniz System.Text.Json / System.Text.Encodings.Web paketlerini 10.0.x altına sabitledi. Sürüm düşürmeyi kaldırın ve NuGet'in Doconut.NET8 tarafından bildirilen sürümleri geri yüklemesine izin verin.

İlk sunum dosyasında TypeInitializationException:

text
Could not load ... System.Drawing.Common, Version=6.0.0.0

Sunum motoru System.Drawing.Common 6.0.0 sürümünü kesinlikle gerektirir (paket tarafından bildirilen). Bu bağımlılığı kaldırmayın veya geçersiz kılmayın — her PPT/PPTX/PPS/POT/ODP açma bu olmadan başarısız olur.

Çıktı yanlış görünüyor

Sayfalar bir filigran taşıyor — uygulama değerlendirme modunda: lisans dosyası bulunamadı, süresi dolmuş geçici veya abonelik penceresi, ya da geçersiz bir alan adı. IDoconutLicenseService'i inceleyin (License.IsLicenseFileFound, IsExpired, IsVersionValid, IsValidForDomain, License.RejectionMessage) — Lisanslama sayfasının IDoconutLicenseService referansı hazır bir uç nokta gösterir.

Eski belgeler bozuk metin gösteriyor — kod sayfası kodlamaları .NET 8'de varsayılan olarak yüklenmez. Başlangıçta bir kez ekleyin:

csharp
Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);

Linux/Docker'da yanlış veya yerine konmuş yazı tipleri — konteyner belge yazı tiplerine sahip değil. FontFolders'ı (WordConfig/PptConfig üzerindeki) bağlanmış bir yazı tipi dizinine yönlendirin.

Sunumlar açılıyor ancak Linux/macOS'ta render edilemiyor — mevcut PPT/PPTX/PPS/POT/ODP renderlayıcı, yerel libgdiplus ve System.Drawing.EnableUnixSupport=true gerektirir. Paket, bu anahtarı destekleyen son sürüm olduğu için System.Drawing.Common 6.0.0 sağlar.

Özellik değerlendirme ortamında çalıştı, üretimde sessiz

Klasik canlıya geçiş sürprizi: aktif Geçici lisans tüm yetenekleri verir; satın aldığınız lisans yalnızca satın aldıklarınızı verir. Arama ve açıklama paketleri, yetenekleri eksik olduğunda kaybolabilir. Yetersiz geçici olmayan bir lisansla kaydedilmiş Converter veya DICOM eklentileri AddDoconut() sırasında başarısız olur. Dağıtımdan önce etkinleştirdiğiniz her özelliğe karşı IsCapabilityGranted(...)'ı karşılaştırın.

Arama hiçbir şey bulamıyor (veya çok az)

  • Doğrudan bir PDF için, AllowSearch açılışta etkinleştirilmemişti. Word, Excel ve PowerPoint, aynı anahtarı iç içe PdfConfig üzerinden sunar.
  • İçerik taranmış/görüntü‑only olduğundan, normal Arama eşleşecek bir metin katmanına sahip değildir. Metin içeren bir kaynak veya metni koruyan bir PDF projeksiyonu kullanın.
  • HTML ve MS Project (MPP) varsayılan olarak aranabilir değildir — DefaultRender = false ayarlayın, böylece PDF projeksiyonu üzerinden yerel bir metin katmanı ile render ederler. Word, Excel, PowerPoint, TXT, Visio, e‑posta, EPUB ve MHT, katalog varsayılanlarında aranabilir.
  • objViewer.CanSearch() başlatmadan sonra false döner — çözülen format standart bir arama yolu içermiyor. Bu karar, Arama lisansından ayrı bir durumdur; ikisini de doğrulayın.

Hâlâ takılı kaldınız?

Sorunu minimal Quick Start uygulamasıyla izole edin; orada da tekrarlanıyorsa, belge, Program.cs dosyanız ve lisans tanı teşhis çıktısı ile desteğe başvurun.

Bu sayfa yardımcı oldu mu?