Brakujące biblioteki DLL w tworzeniu instalatora MSI

This article was translated from English: Does it need improvement?
Translated
View the article in English

Podczas tworzenia instalatora MSI możesz napotkać następujący wyjątek:

2025-01-27 16:57:23 - Błąd: IronBarCodeDetection.Exceptions.IronBarcodeDetectionException: Wystąpił nieoczekiwany błąd podczas wykonywania biblioteki uczenia maszynowego IronBarcode. Prosimy o przesłanie szczegółów na support@ironsoftware.com w celu rozwiązania problemu. ---> System.TypeInitializationException: Inicjalizator typu dla 'Microsoft.ML.OnnxRuntime.NativeMethods' zgłosił wyjątek. ---> System.NullReferenceException: Referencja do obiektu nie została ustawiona na żadną instancję obiektu.
   w Microsoft.ML.OnnxRuntime.NativeMethods..cctor()
   --- Koniec śladu stosu wyjątku wewnętrznego ---
   w Microsoft.ML.OnnxRuntime.SessionOptions..ctor()
   w Iron.BarCode.Extensions.xjtagg`1..ctor(Stream dfepdx, SessionOptions dfepdy)
   w IronBarCodeDetection.BarcodeDetect.PredictObject[TModel](Stream modelStream)
   --- Koniec śladu stosu wyjątku wewnętrznego ---
   w IronBarCodeDetection.BarcodeDetect.PredictObject[TModel](Stream modelStream)
   w IronBarCodeDetection.BarcodeDetect.DetectBarCode()
   w Iron.BarCode.Extensions.cuewjf.ehxbbs(BarcodeDetect tlxjvd)
   w Iron.BarCode.Extensions.cuewjf.ehxbbr(AnyBitmap tlxjvd, Double tlxjve)
   w Iron.BarCode.Extensions.cuewjo.mvanli(AnyBitmap tlxjvd, Double tlxjve)
   w Iron.BarCode.Extensions.cuewjo.mvanlf(Image`1 tlxjvd)
   w Iron.BarCode.Extensions.cuewjo.mvankh(Object tlxjvd)
   w IronBarCode.BarcodeReader.Read(AnyBitmap inputImage, BarcodeReaderOptions barcodeReaderOptions)
   w WindowsFormsBarcode.Form1.btnBrowse_Click_1(Object sender, EventArgs e)
2025-01-27 16:57:23 - Komunikat o błędzie: Wystąpił nieoczekiwany błąd podczas wykonywania biblioteki uczenia maszynowego IronBarcode. Prosimy o przesłanie szczegółów na support@ironsoftware.com w celu rozwiązania problemu.
2025-01-27 16:57:23 - Wewnętrzny wyjątek: Inicjalizator typu dla 'Microsoft.ML.OnnxRuntime.NativeMethods' zgłosił wyjątek.
2025-01-27 16:57:23 - Ślad stosu wewnętrznego wyjątku:    w Microsoft.ML.OnnxRuntime.SessionOptions..ctor()
   w Iron.BarCode.Extensions.xjtagg`1..ctor(Stream dfepdx, SessionOptions dfepdy)
   w IronBarCodeDetection.BarcodeDetect.PredictObject[TModel](Stream modelStream)

Powod

Ten błąd występuje, ponieważ biblioteka nie może znaleźć wymaganych plików, aby działać poprawnie.

Rozwiązanie

Aby zapewnić płynne działanie instalatora MSI, należy dołączyć do projektu instalacyjnego następujące trzy pliki: onnxruntime.dll, IronBarcodeInterop.dll oraz ReaderInterop.dll. Pliki te są generowane podczas kompilacji projektu w trybie Release:

  • onnxruntime.dll: Znajduje się w MsiInstallerSample\MsiInstallerSample\bin\Release
  • IronBarcodeInterop.dll: Znajduje się w MsiInstallerSample\MsiInstallerSample\bin\Release\runtimes\win-x86\native
  • ReaderInterop.dll: Znajduje się w MsiInstallerSample\MsiInstallerSample\bin\Release\runtimes\win-x86\native

Upewnij się, że wszystkie trzy pliki zostały dodane do projektu instalacyjnego, aby uniknąć tego wyjątku.

Curtis Chau
Autor tekstów technicznych

Curtis Chau posiada tytuł licencjata z informatyki (Uniwersytet Carleton) i specjalizuje się w front-endowym rozwoju, z ekspertką w Node.js, TypeScript, JavaScript i React. Pasjonuje się tworzeniem intuicyjnych i estetycznie przyjemnych interfejsów użytkownika, Curtis cieszy się pracą z nowoczesnymi frameworkami i tworzeniem dobrze zorganizowanych, atrakcyjnych wizualnie podrę...

Czytaj więcej
Gotowy, aby rozpocząć?
Nuget Pliki do pobrania 2,240,258 | Wersja: 2026.5 just released
Still Scrolling Icon

Wciąż przewijasz?

Czy chcesz szybko dowodu? PM > Install-Package BarCode
uruchom przykład zobacz, jak twoje ciągi zamieniają się w kody kreskowe.