只有dll的情况下如何动态调用里面的类成员函数
来源:互联网 发布:plc编程及应用第3版 编辑:程序博客网 时间:2024/05/01 17:28
因为项目的需求需要在后台接口中调用项目方提供的dll加解密库,根据已知信息不知道dll里面封装使用了什么算法所以只能硬生生的调用dll里面的函数来进行加解密,如果后台接口使用java编写的话可以通过直接加载dll库通过jna的方式来进行调用,但是加解密函数是一个C写的类成员函数,意思是说必须先实例化一个类才能调用里面的加解密函数,但是java通过jna方式的话不能调用dll中的类成员函数,只能调用外部函数,如果通过jni的方式来调用C++,然后C++来调用dll的话,C++必须采用静态链接dll才行,意思是必须具备dll文件、.lib文件以及.h申明文件三者不可缺一,但是项目需求的话只提供了dll文件,所以这种方式也不行,最终通过千辛万苦搜集资料查找发现可以在vb中通过svr32注册dll的方式来直接引用里面的CEncrypt类,然后实例化一个类后就可以调用里面的加解密函数了,然后再把vb中调用dll的函数再封装成dll(切记vb在封装dll的时候会访问注册表,所以必须以管理员权限运行vb环境,否则会生成失败,就算成功后台也没法直接引用)供后台去直接调用,如果后台接口用C#写的话可以直接以引用的方式添加刚才封装的dll,我试过如果不通过vb封装做转接直接引用那个最原始的dll的话会引用失败。
0 0
- 只有dll的情况下如何动态调用里面的类成员函数
- 在无函数声明的情况下运行时动态调用DLL函数
- 动态调用DLL里面的属性和函数
- 动态调用Dll(未注册的情况下)
- DLL调用失败,如何发现和调用DLL里面的函数
- 在一个类里面 成员函数之间的互相调用
- 调用游戏dll里面的汇编函数
- 如何获取动态加载DLL 类里面的事件?
- C#下对Dll函数的动态调用.
- 关于如何在不使用虚函数的情况下父类调用子类成员函数的问题
- 如何在不引用头文件的情况下调用category里面的方法
- 不知道子类成员函数的情况下,用父类方法调用子类的成员函数指针,需增加/vmg命令
- 静态成员函数如何调用非静态成员变量(函数参数不能任意扩展的情况)
- java中对象多态时成员变量,普通成员函数及静态成员函数的调用情况
- C函数的DLL,C++动态调用。
- 类里面的成员函数指针使用
- C++调用成员函数需要this指针的情况
- 通过序号(索引)调用dll里面的函数
- 上传图片file优化
- 验证是数字的 小数点后两位的
- MySQL允许远程授权
- solaris veritas_SF5.0
- linux下实时查看tomcat运行日志
- 只有dll的情况下如何动态调用里面的类成员函数
- 浅析分布式系统韩伟
- Js暂停倒数参考案例
- PAT_乙级 1005 继续(3n+1)猜想
- Caffe for Python 官方教程(翻译)
- Android开发getCacheDir和getFilesDir区别
- 微信小程序开发初探
- leetcode--balanced-binary-tree
- 编译报错:Undefined symbols for architecture arm64: "_OBJC_CLASS_$_类名", referenced from