2.将32位dll的接口函数封装为COM服务器的相关接口。
3.注册COM服务器*.exe /regserver (注销 *.exe /unregserver)。
4.64位进程调用32位COM服务器接口,成功。从而曲线实现了64位进程调用32位dll。
具体步骤:
我首先创建了一个简单的dll工程,只输出一个函数int c = add(int a,int b)生成lib和dll
然后创建一个进程外COM(EXE类型),内部链接dll,添加方法Method: Add(long *c)
{ *c = add(1,2)}编译生成。
然后注册COM,*.exe /regserver
最创建一个64位WIN32工程验证64位环境下方法调用是否正确,经验证正确!!!
结论:以上方法可以解决64位进程调用32位dll的问题
32位进程调用64位dll应该也可以通过这种方法解决,原因64位windows系统下安装了32位和64位两套COM系统
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)