开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 336|回复: 10
收起左侧

[已解决] C语言写的函数编译成dll无法被易语言调用

 关闭 [复制链接]
结帖率:86% (6/7)
发表于 2024-10-3 17:36:56 | 显示全部楼层 |阅读模式   江苏省南京市
30精币
恳请大佬帮忙,需要调用generate_id和decode_id函数不要动态载入dll的办法



以下代码和编译完成的dll,查看导出表都是正常的,但是易语言死活无法调用找不到函数。。。。。。


id_endecode.zip (38 KB, 下载次数: 11)

最佳答案

查看完整内容

GetModuleHandle GetProcAddress 取函数指针动太调用不就行了,只要是32位的DLL,正常导出函数应该都能调用

回答提醒:如果本帖被关闭无法回复,您有更好的答案帮助楼主解决,请发表至 源码区 可获得加分喔。
友情提醒:本版被采纳的主题可在 申请荣誉值 页面申请荣誉值,获得 1点 荣誉值,荣誉值可兑换荣誉会员、终身vip用户组。
快捷通道:申请荣誉值无答案申请取消悬赏投诉有答案未采纳为最佳
结帖率:60% (3/5)

签到天数: 23 天

发表于 2024-10-3 17:36:57 | 显示全部楼层   广西壮族自治区柳州市
GetModuleHandle    GetProcAddress  取函数指针动太调用不就行了,只要是32位的DLL,正常导出函数应该都能调用
回复

使用道具 举报

结帖率:86% (6/7)

签到天数: 2 天

 楼主| 发表于 2024-10-3 17:40:34 | 显示全部楼层   江苏省南京市
忘了说明了,压缩包里的dll是64的,但是gcc编译-m32依然无效
回复

使用道具 举报

结帖率:90% (9/10)

签到天数: 22 天

发表于 2024-10-3 18:06:32 | 显示全部楼层   天津市天津市
易语言是32位
回复

使用道具 举报

结帖率:100% (21/21)

签到天数: 24 天

发表于 2024-10-3 18:09:27 | 显示全部楼层   广东省惠州市
易语言不能调用64位DLL的.如果VS不会用,可以用炫语言来写DLL,性能和c++相当的!

点评

我编译命令是gcc -m32 -Wall -shared snowflake.cpp -o snowflake.dll,是32位的啊\n压缩包里的那个dll请无视,搞错了   江苏省南京市  发表于 2024-10-3 18:13
回复

使用道具 举报

结帖率:86% (6/7)

签到天数: 2 天

 楼主| 发表于 2024-10-3 22:13:00 | 显示全部楼层   江苏省南京市
dnxl 发表于 2024-10-3 22:03
GetModuleHandle    GetProcAddress  取函数指针动太调用不就行了,只要是32位的DLL,正常导出函数应该都能 ...

QQ20241003-221122.png

调用不了,LoadlibraryA返回126。。。
回复

使用道具 举报

结帖率:60% (3/5)

签到天数: 23 天

发表于 2024-10-3 22:14:46 | 显示全部楼层   广西壮族自治区柳州市
Timelord 发表于 2024-10-3 22:13
调用不了,LoadlibraryA返回126。。。

那是你DLL写的有问题吧
回复

使用道具 举报

结帖率:86% (6/7)

签到天数: 2 天

 楼主| 发表于 2024-10-3 22:22:26 | 显示全部楼层   江苏省南京市
dnxl 发表于 2024-10-3 22:14
那是你DLL写的有问题吧

我给出了dll源代码,您如果方便可以帮忙编译一下
回复

使用道具 举报

结帖率:60% (3/5)

签到天数: 23 天

发表于 2024-10-3 22:34:00 | 显示全部楼层   广西壮族自治区柳州市
Timelord 发表于 2024-10-3 22:22
我给出了dll源代码,您如果方便可以帮忙编译一下

对C++不太熟,没安装有环境
回复

使用道具 举报

结帖率:86% (6/7)

签到天数: 2 天

 楼主| 发表于 2024-10-3 22:45:35 | 显示全部楼层   江苏省南京市
问题已解决,gcc编译的dll似乎是缺依赖,用cl编译后就可以调用

以前也没出现过这种情况,学习到了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 793400750,邮箱:wp@125.la
网站简介:精易论坛成立于2009年,是一个程序设计学习交流技术论坛,隶属于揭阳市揭东区精易科技有限公司所有。
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表