flutter加载dll 报错问题

解决flutter加载dll 报错问题

LoadLibrary 报错 126 or 193

明确一点:flutter构建exe 时默认是MSVC的。

1. 先检查dll 的位数是否满足

file ***.dll

output: PE32+ executable (DLL) (console) x86-64, for MS Windows, 19 sections

这种是64位的机器。

满足的话可以看第二点了。

2. 查看dll 依赖

objdump -p opus.dll | grep 'DLL Name' #windows下面会多个.exe ,mingw

若出现api-ms-*** 这种的,证明其dll 是visual studio(MSVC) 构建的。

若没有的话,则证明其是非visual studio 构建的。

3. 如何解决这种报错

若是mingw构建的话,需要将mingw文件夹下的 dll 依赖拷贝到你构建的 flutter.exe 的同级目录下。

复制代码
objdump -p libsoe.dll | grep 'DLL Name'
        DLL Name: WINMM.dll
        DLL Name: ADVAPI32.dll
        DLL Name: libgcc_s_seh-1.dll
        DLL Name: KERNEL32.dll
        DLL Name: msvcrt.dll
        DLL Name: libwinpthread-1.dll
        DLL Name: USER32.dll
        DLL Name: libstdc++-6.dll

比如上面这个,你就需要将libgcc_s_seh-1.dll、 libwinpthread-1.dll、 libstdc+±6.dll 的dll 放置在你的flutter构建出来的exe的同级目录下。

相关推荐
2601_949847751 天前
Form-data 跨端三方库仓颉适配全流程
前端·javascript·flutter
大龄秃头程序员1 天前
Flutter 中我为什么把 GetX 定位为高效率方案,而不是默认架构方案
flutter
传奇开心果编程1 天前
组合优先开发范式:从汉字造字原理到声明式UI组件组合思想
android·flutter·ios·swiftui·移动开发·harmonyos·android jetpack
2501_944521592 天前
Ramda 跨端三方库仓颉适配全流程
开发语言·javascript·flutter·php
大龄秃头程序员2 天前
Flutter 架构里总被混淆的 IoC、DI、Service Locator,到底是什么关系?
flutter
事圆则缓2 天前
Flutter 与原生交互的最后一层:RTC 视频帧怎么走
flutter·音视频·实时音视频
2601_949847752 天前
jose 跨端三方库仓颉适配全流程
前端·javascript·flutter
2601_949970692 天前
msgpackr 跨端三方库仓颉适配全流程
前端·javascript·flutter
2601_949970693 天前
HumanizeDuration 跨端三方库仓颉适配全流程
前端·javascript·flutter
传奇开心果编程3 天前
【Flutter踩坑排雷】第3课:const 误用坑|const 错误使用引发 UI 异常与性能损耗
flutter·移动开发·跨平台·dart·编程语言理论·编程框架·声明式ui