MSI Yükleyici Oluştururken Eksik DLL'ler
Bir MSI yükleyici oluştururken, aşağıdaki istisnayla karşılaşabilirsiniz:
2025-01-27 16:57:23 - Hata: IronBarCodeDetection.Exceptions.IronBarcodeDetectionException: IronBarcode Makine Öğrenmesi kütüphanesinin çalıştırılması sırasında beklenmeyen bir hata oluştu. Destek almak için support@ironsoftware.com adresine ayrıntılar sağlamalısınız. ---> System.TypeInitializationException: 'Microsoft.ML.OnnxRuntime.NativeMethods' için tür başlatıcı bir istisna attı. ---> System.NullReferenceException: Nesne başvurusu, bir nesne örneğine ayarlanmadı.
Microsoft.ML.OnnxRuntime.NativeMethods..cctor()'da
--- iç istisna yığını iz bırakılması sonu ---
Microsoft.ML.OnnxRuntime.SessionOptions..ctor()'da
Iron.BarCode.Extensions.xjtagg`1..ctor(Stream dfepdx, SessionOptions dfepdy)'da
IronBarCodeDetection.BarcodeDetect.PredictObject[TModel](Stream modelStream)'da
--- iç istisna yığını iz bırakılması sonu ---
IronBarCodeDetection.BarcodeDetect.PredictObject[TModel](Stream modelStream)'da
IronBarCodeDetection.BarcodeDetect.DetectBarCode()'da
Iron.BarCode.Extensions.cuewjf.ehxbbs(BarcodeDetect tlxjvd)'da
Iron.BarCode.Extensions.cuewjf.ehxbbr(AnyBitmap tlxjvd, Double tlxjve)'da
Iron.BarCode.Extensions.cuewjo.mvanli(AnyBitmap tlxjvd, Double tlxjve)'da
Iron.BarCode.Extensions.cuewjo.mvanlf(Image`1 tlxjvd)'da
Iron.BarCode.Extensions.cuewjo.mvankh(Object tlxjvd)'da
IronBarCode.BarcodeReader.Read(AnyBitmap inputImage, BarcodeReaderOptions barcodeReaderOptions)'da
WindowsFormsBarcode.Form1.btnBrowse_Click_1(Obje sender, EventArgs e)'da
2025-01-27 16:57:23 - Hata Mesajı: IronBarcode Makine Öğrenmesi kütüphanesinin çalıştırılması sırasında beklenmeyen bir hata oluştu. Destek almak için support@ironsoftware.com adresine ayrıntılar sağlamalısınız.
2025-01-27 16:57:23 - İç İstisna: 'Microsoft.ML.OnnxRuntime.NativeMethods' tür başlatıcısı bir istisna attı.
2025-01-27 16:57:23 - İç İstisna Yığını İzlemesi: Microsoft.ML.OnnxRuntime.SessionOptions..ctor()'da
Iron.BarCode.Extensions.xjtagg`1..ctor(Stream dfepdx, SessionOptions dfepdy)'da
IronBarCodeDetection.BarcodeDetect.PredictObject[TModel](Stream modelStream)'da
Sebep
Bu hata, kütüphanenin düzgün çalışması için gerekli dosyaları bulamaması nedeniyle oluşur.
Çözüm
MSI yükleyicisinin sorunsuz çalışmasını sağlamak için, kurulum projenize şu üç dosyayı eklemelisiniz: onnxruntime.dll, IronBarcodeInterop.dll ve ReaderInterop.dll. Bu dosyalar, projeyi Yayın modunda derlediğinizde üretilir:
onnxruntime.dll: MsiInstallerSample\MsiInstallerSample\bin\Release konumunda bulunurIronBarcodeInterop.dll: MsiInstallerSample\MsiInstallerSample\bin\Release\runtimes\win-x86\native konumunda bulunurReaderInterop.dll: MsiInstallerSample\MsiInstallerSample\bin\Release\runtimes\win-x86\native konumunda bulunur
Bu üç dosyanın da Kurulum Projenize eklendiğinden emin olun, böylece bu istisnayı önleyebilirsiniz.

