建立MSI安裝程式時缺少DLLs
This article was translated from English: Does it need improvement?
Translated
View the article in English
在建立MSI安裝程式時,您可能會遇到以下例外情況:
2025-01-27 16:57:23 - 錯誤: IronBarCodeDetection.Exceptions.IronBarcodeDetectionException: 執行IronBarcode機器學習程式庫時發生意外錯誤。 請將詳細資訊提供給support@ironsoftware.com以解決此問題。 ---> System.TypeInitializationException: 'Microsoft.ML.OnnxRuntime.NativeMethods'的型別初始化拋出了例外。 ---> System.NullReferenceException: 物件參考未設定為物件的實例。
at Microsoft.ML.OnnxRuntime.NativeMethods..cctor()
--- 內部例外堆疊追蹤的結束 ---
at Microsoft.ML.OnnxRuntime.SessionOptions..ctor()
at Iron.BarCode.Extensions.xjtagg`1..ctor(Stream dfepdx, SessionOptions dfepdy)
at IronBarCodeDetection.BarcodeDetect.PredictObject[TModel](Stream modelStream)
--- 內部例外堆疊追蹤的結束 ---
at IronBarCodeDetection.BarcodeDetect.PredictObject[TModel](Stream modelStream)
at IronBarCodeDetection.BarcodeDetect.DetectBarCode()
at Iron.BarCode.Extensions.cuewjf.ehxbbs(BarcodeDetect tlxjvd)
at Iron.BarCode.Extensions.cuewjf.ehxbbr(AnyBitmap tlxjvd, Double tlxjve)
at Iron.BarCode.Extensions.cuewjo.mvanli(AnyBitmap tlxjvd, Double tlxjve)
at Iron.BarCode.Extensions.cuewjo.mvanlf(Image`1 tlxjvd)
at Iron.BarCode.Extensions.cuewjo.mvankh(Object tlxjvd)
at IronBarCode.BarcodeReader.Read(AnyBitmap inputImage, BarcodeReaderOptions barcodeReaderOptions)
at WindowsFormsBarcode.Form1.btnBrowse_Click_1(Object sender, EventArgs e)
2025-01-27 16:57:23 - 錯誤訊息: 執行IronBarcode機器學習程式庫時發生意外錯誤。 請將詳細資訊提供給support@ironsoftware.com以解決此問題。
2025-01-27 16:57:23 - 內部例外: 'Microsoft.ML.OnnxRuntime.NativeMethods'的型別初始化拋出了例外。
2025-01-27 16:57:23 - 內部例外堆疊追蹤: at Microsoft.ML.OnnxRuntime.SessionOptions..ctor()
at Iron.BarCode.Extensions.xjtagg`1..ctor(Stream dfepdx, SessionOptions dfepdy)
at IronBarCodeDetection.BarcodeDetect.PredictObject[TModel](Stream modelStream)
原因
此錯誤發生是因為程式庫無法找到正常執行所需的檔案。
解決方案
為了確保MSI安裝程式順利運行,您必須在設定專案中包含以下三個檔案: ReaderInterop.dll。 這些檔案是在Release模式下構建專案時生成的:
onnxruntime.dll: Located at MsiInstallerSample\MsiInstallerSample\bin\ReleaseIronBarcodeInterop.dll: Located at MsiInstallerSample\MsiInstallerSample\bin\Release\runtimes\win-x86\nativeReaderInterop.dll: Located at MsiInstallerSample\MsiInstallerSample\bin\Release\runtimes\win-x86\native
確保所有三個檔案都新增到您的設定專案中以避免此例外情況。
準備好開始了嗎?
Nuget 下載 2,331,688 | 版本: 2026.7 剛剛發布

