win32 error 126报错

报错概述:electron通过ffi调用自己编写的c++生成的dll报错,本机运行正常无报错,其他电脑报错(无相应开发环境,无构建工具)

本机环境:electron@20.0.0(该版本以上的electron不支持ffi)、vs2022

报错内容:Uncaught Exception:Error: Dynamic Linking Error: Win32 error 126 at new DynamicLibrary...

由于在本机打包后运行正常无问题,考虑不是所执行的dll缺失(请先排除路径缺失),考虑是环境导致的。

126错误代码报错和win7上报3221225501错误代码实际上都是执行的dll缺失或该dll依赖的其他dll缺失。请排除以下问题再试此方法:

1.检查执行的dll路径

2.配置build字段的extraResources和extraFiles(这俩是用来复制文件的,如果没有打包没有使用asar的话就没必要用,具体使用方法网上有)

3.ffi.Library时不使用路径,而是将dll目录的路径添加到进程的环境变量中,使用dll名称进行调用等方法。

解决方法:

1.由于该dll是自己开发的,由vs生成的,生成的时候选择的模式是debug,注意,debug模式会将本机环境也绑定到dll依赖中去,导致其他电脑因没有这些环境而报错。故,如果是自己生成的dll,将debug模式改为release模式再生成!!!

2.如果使用release依然报错,尝试安装vc运行环境,在微软官网可以搜到,版本使用最新版

  • 6
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值