开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

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


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

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

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

[易源码分享] C++显示调用易语言编写的DLL(记录贴)

[复制链接]
发表于 2019-6-10 11:47:51 | 显示全部楼层 |阅读模式   广东省东莞市
分享源码
界面截图:
是否带模块: 纯源码
备注说明: -
最近遇到一个案子使用C++调用易编写的DLL,其中遇到调用问题,特发此贴记录。

C++代码:
// ConsoleApplication4.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//
#include "pch.h"
#include<stdio.h>
#include<windows.h>
#include<stdlib.h>
#include <iostream>
using namespace std;
HINSTANCE hMod = LoadLibrary("d:\\atten_db.dll");//dll路径
void write_db()
{
       typedef char* (__stdcall *FUNA)(char*, char*);
       FUNA write_db = (FUNA)GetProcAddress(hMod, TEXT("write_db"));//直接使用原工程函数名
       char parameters1[] = "AR001,T10,2,V1.8 - Nov 20 2018 -14:20:04,02:00:00:00:15:b1,v181,01070001,20190105t140632,62,PASS,ChecknnModelsMessage,OK,OK,PASS,DEVICE_ID,0200000015b1,0200000015b1,PASS,MFG_ID,01070001,01070001,PASS,SECRET,f1de923b64750a8c,f1de923b64750a8c,PASS,Firmware,v181,v181,PASS,Bootloader,v4,v4,PASS,Soft-deviceFWID,0x9d,0x9d,PASS,+3V_PM,3.01,[2.90;3.20],PASS,+3V_BLE,2.99,[2.90;3.20],PASS,+3V_SENSOR,3.00,[2.90;3.20],PASS,+3V_LASER,3.08,[2.90;3.20],PASS,+3V_FAN,3.05,[2.90;3.20],PASS,+1V8_SENSOR,1.81,[1.70;1.98],PASS,EnTRHsensor,OK,OK,PASS,temperature,22.300,[20.43;24.43],PASS,humidity,77.800,[70.40;90.40],PASS,ResetButton,OK,OK,PASS";
       char parameters2[] = "c:\test";
       char* result = write_db(parameters1,parameters2);
       printf("%s", result);
}
void read_db()
{
       typedef char* (__stdcall *FUNA1)(char*, char*);
       FUNA1 read_db = (FUNA1)GetProcAddress(hMod, TEXT("read_db"));
       char parameters1[] = "02:00:00:00:15:46";
       char parameters2[] = "t20";
       char* result = read_db(parameters1,parameters2);
       printf("%s", result);
}
int main()
{
       //write_db();
       read_db();
       FreeLibrary(hMod);
}


点评

用C++连调用个DLL都不会那用什么C++,别的语言编译的DLL就不是PE结构了?   广东省江门市  发表于 2019-6-12 12:30

结帖率:100% (8/8)

签到天数: 2 天

发表于 2019-6-22 14:49:18 | 显示全部楼层   湖南省长沙市
谢谢分享呀!!!!!!
回复 支持 反对

使用道具 举报

发表于 2019-6-18 15:11:16 | 显示全部楼层   山西省大同市
感谢分享 感谢分享感谢分享感谢分享感谢分享感谢分享感谢分享感谢分享感谢分享感谢分享感谢分享感谢分享
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-6-13 15:40:42 | 显示全部楼层   广东省东莞市
主要是我遇到的SB不会显式调用,必须要我提供LIB 。。。。。
回复 支持 反对

使用道具 举报

发表于 2019-6-13 15:20:11 | 显示全部楼层   四川省成都市
回复回复回复
回复 支持 反对

使用道具 举报

结帖率:100% (3/3)

签到天数: 25 天

发表于 2019-6-13 13:48:15 | 显示全部楼层   河南省郑州市
好东西,感谢分享!
回复 支持 反对

使用道具 举报

结帖率:0% (0/1)
发表于 2019-6-12 02:06:15 | 显示全部楼层   福建省漳州市
好东西,感谢分享!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-6-10 13:19:05 | 显示全部楼层   广东省东莞市
a135123 发表于 2019-6-10 12:38
你整错区了,你应该取C++区...

额  好吧  感谢提醒
回复 支持 反对

使用道具 举报

结帖率:100% (1/1)

签到天数: 2 天

发表于 2019-6-10 12:38:06 | 显示全部楼层   广东省河源市
你整错区了,你应该取C++区...
回复 支持 反对

使用道具 举报

发表于 2019-6-10 12:02:19 | 显示全部楼层   河南省周口市
都是大佬啊
回复 支持 反对

使用道具 举报

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

本版积分规则 致发广告者

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

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

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