DLLs Ausentes na Criação do Instalador MSI

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

Ao criar um instalador MSI, você pode encontrar a seguinte exceção:

2025-01-27 16:57:23 - Erro: IronBarCodeDetection.Exceptions.IronBarcodeDetectionException: Erro inesperado ocorreu durante a execução da biblioteca de Machine Learning do IronBarcode. Por favor, forneça detalhes para support@ironsoftware.com para uma resolução. ---> System.TypeInitializationException: O inicializador do tipo 'Microsoft.ML.OnnxRuntime.NativeMethods' gerou uma exceção. ---> System.NullReferenceException: Referência de objeto não definida para uma instância de um objeto.
   em Microsoft.ML.OnnxRuntime.NativeMethods..cctor()
   --- Fim do rastreamento da pilha de exceção interna ---
   em Microsoft.ML.OnnxRuntime.SessionOptions..ctor()
   em Iron.BarCode.Extensions.xjtagg`1..ctor(Stream dfepdx, SessionOptions dfepdy)
   em IronBarCodeDetection.BarcodeDetect.Predict[TModel](Stream modelStream)
   --- Fim do rastreamento da pilha de exceção interna ---
   em IronBarCodeDetection.BarcodeDetect.Predict[TModel](Stream modelStream)
   em IronBarCodeDetection.BarcodeDetect.DetectBarCode()
   em Iron.BarCode.Extensions.cuewjf.ehxbbs(BarcodeDetect tlxjvd)
   em Iron.BarCode.Extensions.cuewjf.ehxbbr(AnyBitmap tlxjvd, Double tlxjve)
   em Iron.BarCode.Extensions.cuewjo.mvanli(AnyBitmap tlxjvd, Double tlxjve)
   em Iron.BarCode.Extensions.cuewjo.mvanlf(Image`1 tlxjvd)
   em Iron.BarCode.Extensions.cuewjo.mvankh(Object tlxjvd)
   em IronBarCode.BarcodeReader.Read(AnyBitmap inputImage, BarcodeReaderOptions barcodeReaderOptions)
   em WindowsFormsBarcode.Form1.btnBrowse_Click_1(Object sender, EventArgs e)
2025-01-27 16:57:23 - Mensagem de Erro: Erro inesperado ocorreu durante a execução da biblioteca de Machine Learning do IronBarcode. Por favor, forneça detalhes para support@ironsoftware.com para uma resolução.
2025-01-27 16:57:23 - Exceção Interna: O inicializador do tipo 'Microsoft.ML.OnnxRuntime.NativeMethods' gerou uma exceção.
2025-01-27 16:57:23 - Rastreamento de Pilha da Exceção Interna:    em Microsoft.ML.OnnxRuntime.SessionOptions..ctor()
   em Iron.BarCode.Extensions.xjtagg`1..ctor(Stream dfepdx, SessionOptions dfepdy)
   em IronBarCodeDetection.BarcodeDetect.Predict[TModel](Stream modelStream)

Razão

Este erro ocorre porque a biblioteca não consegue encontrar os arquivos necessários para funcionar corretamente.

Solução

Para garantir que o instalador MSI funcione sem problemas, você deve incluir os seguintes três arquivos em seu projeto de instalação: onnxruntime.dll, IronBarcodeInterop.dll e ReaderInterop.dll. Esses arquivos são gerados quando você compila o projeto no modo Release:

  • onnxruntime.dll: Localizado em MsiInstallerSample\MsiInstallerSample\bin\Release
  • IronBarcodeInterop.dll: Localizado em MsiInstallerSample\MsiInstallerSample\bin\Release\runtimes\win-x86\native
  • ReaderInterop.dll: Localizado em MsiInstallerSample\MsiInstallerSample\bin\Release\runtimes\win-x86\native

Certifique-se de que todos os três arquivos sejam adicionados ao seu Projeto de Configuração para evitar esta exceção.

Curtis Chau
Redator Técnico

Curtis Chau é bacharel em Ciência da Computação (Universidade Carleton) e se especializa em desenvolvimento front-end, com experiência em Node.js, TypeScript, JavaScript e React. Apaixonado por criar interfaces de usuário intuitivas e esteticamente agradáveis, Curtis gosta de trabalhar com frameworks modernos e criar manuais ...

Leia mais
Pronto para começar?
Nuget Downloads 2,108,094 | Versão: 2026.3 acaba de ser lançado
Still Scrolling Icon

Ainda está rolando a tela?

Quer provas rápidas? PM > Install-Package BarCode
executar um exemplo Veja seu fio se transformar em um código de barras.