Missing DLLs in Creating MSI Installer

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

Lors de la création d'un installateur MSI, vous pouvez rencontrer l'exception suivante :

2025-01-27 16:57:23 - Erreur : IronBarCodeDetection.Exceptions.IronBarcodeDetectionException : Une erreur inattendue s'est produite lors de l'exécution de la bibliothèque IronBarcode Machine Learning. Veuillez fournir des détails à support@ironsoftware.com pour une résolution. ---> System.TypeInitializationException : L'initialiseur de type pour 'Microsoft.ML.OnnxRuntime.NativeMethods' a levé une exception. ---> System.NullReferenceException : La référence d'objet n'est pas définie à une instance d'un objet.
   à Microsoft.ML.OnnxRuntime.NativeMethods..cctor()
   --- Fin de la trace de la pile d'exceptions internes ---
   à Microsoft.ML.OnnxRuntime.SessionOptions..ctor()
   à Iron.BarCode.Extensions.xjtagg`1..ctor(Stream dfepdx, SessionOptions dfepdy)
   à IronBarCodeDetection.BarcodeDetect.PredictObject[TModel](Stream modelStream)
   --- Fin de la trace de la pile d'exceptions internes ---
   à IronBarCodeDetection.BarcodeDetect.PredictObject[TModel](Stream modelStream)
   à IronBarCodeDetection.BarcodeDetect.DetectBarCode()
   à Iron.BarCode.Extensions.cuewjf.ehxbbs(BarcodeDetect tlxjvd)
   à Iron.BarCode.Extensions.cuewjf.ehxbbr(AnyBitmap tlxjvd, Double tlxjve)
   à Iron.BarCode.Extensions.cuewjo.mvanli(AnyBitmap tlxjvd, Double tlxjve)
   à Iron.BarCode.Extensions.cuewjo.mvanlf(Image`1 tlxjvd)
   à Iron.BarCode.Extensions.cuewjo.mvankh(Object tlxjvd)
   à IronBarCode.BarcodeReader.Read(AnyBitmap inputImage, BarcodeReaderOptions barcodeReaderOptions)
   à WindowsFormsBarcode.Form1.btnBrowse_Click_1(Object sender, EventArgs e)
2025-01-27 16:57:23 - Message d'erreur : Une erreur inattendue s'est produite lors de l'exécution de la bibliothèque IronBarcode Machine Learning. Veuillez fournir des détails à support@ironsoftware.com pour une résolution.
2025-01-27 16:57:23 - Exception interne : L'initialiseur de type pour 'Microsoft.ML.OnnxRuntime.NativeMethods' a levé une exception.
2025-01-27 16:57:23 - Inner Exception Stack Trace:    à Microsoft.ML.OnnxRuntime.SessionOptions..ctor()
   à Iron.BarCode.Extensions.xjtagg`1..ctor(Stream dfepdx, SessionOptions dfepdy)
   à IronBarCodeDetection.BarcodeDetect.PredictObject[TModel](Stream modelStream)

Raison

Cette erreur se produit car la bibliothèque ne peut pas trouver les fichiers requis pour fonctionner correctement.

Solution

Pour garantir le bon fonctionnement de l'installateur MSI, vous devez inclure les trois fichiers suivants dans votre projet d'installation : onnxruntime.dll, IronBarcodeInterop.dll et ReaderInterop.dll. Ces fichiers sont générés lorsque vous construisez le projet en mode Release :

  • onnxruntime.dll : Situé à MsiInstallerSample\MsiInstallerSample\bin\Release
  • IronBarcodeInterop.dll : Situé à MsiInstallerSample\MsiInstallerSample\bin\Release\runtimes\win-x86\native
  • ReaderInterop.dll : Situé à MsiInstallerSample\MsiInstallerSample\bin\Release\runtimes\win-x86\native

Assurez-vous que les trois fichiers sont ajoutés à votre projet d'installation pour éviter cette exception.

Curtis Chau
Rédacteur technique

Curtis Chau détient un baccalauréat en informatique (Université de Carleton) et se spécialise dans le développement front-end avec expertise en Node.js, TypeScript, JavaScript et React. Passionné par la création d'interfaces utilisateur intuitives et esthétiquement plaisantes, Curtis aime travailler avec des frameworks modernes ...

Lire la suite
Prêt à commencer?
Nuget Téléchargements 1,935,276 | Version : 2025.11 vient de sortir