Sorun Giderme
Yaygın hataları teşhis edin
Aşağıdaki her mesaj, Doconut'un ürettiği tam metindir ve semptomlara 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 hatalarıyla dolu
UseDoconutResources() eksik veya UseDoconut()'dan sonra yerleştirilmiş. Boru hattında ilk olarak gelmelidir.
HTTP 500 ile:
Session middleware not configured. Call UseSession() before UseDoconut().Doconut'un token güvenliği (varsayılan olarak açıktır) ASP.NET oturum durumuna ihtiyaç duyar. builder.Services.AddSession() ve app.UseSession() ekleyin Doconut ara katman dalından önce.
Sayfa alanında şu hatayı gösteren bir görüntü:
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 yapılandırması, SameSite politikası, çerez kutusu 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 hatayı gösteren bir görüntü:
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.
Bir 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 derleme). Bu durum, belge açmayı (hızlı hata) engeller, bir filigrana düşmek yerine; nedeni için License.RejectionMessage'ı okuyun.
LicenseException:
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) ile doğrulayın. Eksik veya yetersiz geçici olmayan bir yetki genellikle AddDoconut() sırasında daha önce başarısız olur.
FormatNotSupportedException:
Document format '<extension>' is not supported.Hiçbir görüntüleyici — yerleşik, eklenti veya özel — bu uzantıyı desteklemez. Desteklenen format listesini kontrol edin; 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:
No IDocumentConverter is registered. Add the converter plugin: options.AddPlugin<Doconut.Plugins.Converter.ConverterPlugin>().DocumentConverter'ı kaydetmeden Converter eklentisini eklemediniz.
Başlangıçta başarısızlık
InvalidOperationException bir AddPlugin ile kaydedilen eklentiden bahsediyor — 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.
ArgumentException AddDoconut()'dan:
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çarken çalışma zamanında:
Could not load file or assembly 'System.Text.Json, Version=8.0.0.0'Projeniz System.Text.Json veya System.Text.Encodings.Web paketlerini Doconut.NET6 tarafından bildirilen 8.0.x bağımlılıkların altında sabitlemiş. Düşürmeyi kaldırın ve NuGet'in paket grafiğini (denetlenmiş 26.7.0 paketindeki System.Text.Json 8.0.6 ve System.Text.Encodings.Web 8.0.0) geri yüklemesine izin verin.
TypeInitializationException ilk sunum dosyasında:
Could not load ... System.Drawing.Common, Version=6.0.0.0Sunum motoru System.Drawing.Common 6.0.0 sürümünü zorunlu olarak 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 6'da varsayılan olarak yüklenmez. Başlangıçta bir kez ekleyin:
Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);Linux/Docker'da yanlış veya yerine konmuş yazı tipleri — konteyner belge yazı tiplerine sahip değil. FontFolders'ı (WordConfig/PptConfig içinde) 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 modunda çalıştı, üretimde sessiz
Klasik canlıya geçiş sürprizi: aktif Geçici lisans her yeteneği 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ıma önceden 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,
AllowSearchaçılışta etkinleştirilmemişti. Word, Excel ve PowerPoint, aynı anahtarı iç içePdfConfigü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 ya da metni koruyan bir PDF projeksiyonu kullanın.
- HTML ve MS Project (MPP) varsayılan olarak aranabilir değildir —
DefaultRender = falseolarak ayarlayın, böylece PDF projeksiyonu aracılığıyla 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 sonrafalsedöner — çözülen format standart bir arama yolu içermez. Bu karar, Arama lisansından ayrı bir durumdur; ikisini de doğrulayın.
Hâlâ takıldı mı?
Problemi minimal Quick Start uygulamasıyla izole edin; eğer orada da tekrarlanıyorsa, belgeyi, Program.cs dosyanızı ve lisans tanı teşhis çıktısını destek ekibiyle paylaşın.
Bu sayfa yardımcı oldu mu?