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的同级目录下。

相关推荐
里欧跑得慢1 小时前
15. Web可访问性最佳实践:让每个用户都能平等访问
前端·css·flutter·web
Lanren的编程日记4 小时前
Flutter 鸿蒙应用数据版本管理实战:版本记录+版本回退+版本对比,实现全链路数据版本控制
flutter·华为·harmonyos
MonkeyKing10 小时前
Flutter列表性能极致优化:从卡顿到丝滑
flutter·dart
IntMainJhy11 小时前
「Flutter三方库sqflite的鸿蒙化适配与实战指南:从入门到踩坑的本地数据库开发全记录」
数据库·flutter·华为·信息可视化·数据库开发·harmonyos
梦想不只是梦与想12 小时前
flutter中 safeArea组件
flutter·safearea
Hello__777714 小时前
开源鸿蒙 Flutter 实战|自定义头像组件全流程实现
flutter·华为·harmonyos
LIO14 小时前
Flutter——直击核心的极简指南
flutter
愚者Pro15 小时前
Flutter项目 lib/ 目录结构(大厂规范)
flutter
西西学代码15 小时前
Flutter---设备搜索动画效果(3)
flutter